This is patch set of extcon for v3.9.

Update to max77693/max8997 extcon driver:
 - Using MHL_TA cable for charging.
 - Support JIG cable.
 - Support Dock-Audio device for playing music and button of device.
 - Support Dock-Smart device for desktop mode with mouse/keyboard.
 - Set default UART/USB path on probe().
 - Check the state/type of cable after completing initialization.
 - Code clean to remove duplicate code and bug fix related to sequence of interrupt.
 - Fix irq_flag of max8997/max77693 driver.
 
 Update to arizona extcon driver:
 - Headphone measurements.
 - Alternative detection mechanism for non-default system designs.
 - Microphone clamp integration.
 - Support for additional detection pin.
 - MICBIAS rise time configuration.
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v1.4.10 (GNU/Linux)
 
 iQIcBAABAgAGBQJQ9j8XAAoJEJzN3yze689TYMQQANhX0/WcRIvjddU8Ewf2SIR6
 e1iPcIe+a30dk1tQc4plpMnXMpOGGD2gGq7XaM6hxt2IZj6aGYlP1/pcpNko0VMq
 391s+fuG+TOGWv/y107QM9uoVnQ2xy9Av+qGacACPus9/u+MjUMg1VyVZE1OmjM5
 M+HlkWkYVllJPq+7iWHyteLOxyv3sfHjm1i6z+5UDV3Gn7VXtPOoOiZFSiTicnr5
 TvSnEH+4zA3ZKCuIfcj6eCaQLxNB4eUdDUXQKOMPKPat1QJU7byd9CUO088JDfry
 RKArUn3wcRrGykBQ9hnhOd+qdzzBkvw6v6RezfYzImcojrxuWnxYnV9mF8kETTeD
 zMa/u5kCVKF1Za1AnnWxdteeXdc2OYVz41+qVa5D7T8TxS/NK8PYpobLTCLqDs77
 zGaORY4rbt4u1mEmyhA/x4YP0xglbVdHQWG14FCdcxaw7bxLrBXzq8Op66z/wmI5
 FnrZWoFiLmIBQcWgxwyQ03bCf3chKGpXCQBOQk4nkV5C6qIvODnTvD0Wj6McsI6R
 sy+AILVat8HrruyXJoQsfkmKlxkQ/f/H2GZvzD36Mrpf1CvMQwaFoYlf6PY0t5lH
 +XqVAtlbCP94+CNwRrHv6kI0UX/pZ4DGIeaDq+azmH/9HwtZyiQEye+BCPR4McRT
 HR/G0lzzk8RJztmlXItX
 =YOtQ
 -----END PGP SIGNATURE-----

Merge tag 'extcon-for-3.9' of git://git.kernel.org/pub/scm/linux/kernel/git/chanwoo/extcon into char-misc-next

Chanwoo writes:
  This is patch set of extcon for v3.9.

  Update to max77693/max8997 extcon driver:
  - Using MHL_TA cable for charging.
  - Support JIG cable.
  - Support Dock-Audio device for playing music and button of device.
  - Support Dock-Smart device for desktop mode with mouse/keyboard.
  - Set default UART/USB path on probe().
  - Check the state/type of cable after completing initialization.
  - Code clean to remove duplicate code and bug fix related to sequence of interrupt.
  - Fix irq_flag of max8997/max77693 driver.

  Update to arizona extcon driver:
  - Headphone measurements.
  - Alternative detection mechanism for non-default system designs.
  - Microphone clamp integration.
  - Support for additional detection pin.
  - MICBIAS rise time configuration.
This commit is contained in:
Greg Kroah-Hartman 2013-01-15 23:26:35 -08:00
commit feee830394
1414 changed files with 9437 additions and 8138 deletions

View File

@ -116,7 +116,7 @@ my_suspend (struct pci_dev * pci_dev,
return 0; /* a negative value on error, 0 on success. */ return 0; /* a negative value on error, 0 on success. */
} }
static void __devexit static void
my_remove (struct pci_dev * pci_dev) my_remove (struct pci_dev * pci_dev)
{ {
my_device *my = pci_get_drvdata (pci_dev); my_device *my = pci_get_drvdata (pci_dev);
@ -124,7 +124,7 @@ my_remove (struct pci_dev * pci_dev)
/* Describe me. */ /* Describe me. */
} }
static int __devinit static int
my_probe (struct pci_dev * pci_dev, my_probe (struct pci_dev * pci_dev,
const struct pci_device_id * pci_id) const struct pci_device_id * pci_id)
{ {
@ -157,7 +157,7 @@ my_pci_driver = {
.id_table = my_pci_device_ids, .id_table = my_pci_device_ids,
.probe = my_probe, .probe = my_probe,
.remove = __devexit_p (my_remove), .remove = my_remove,
/* Power management functions. */ /* Power management functions. */
.suspend = my_suspend, .suspend = my_suspend,

View File

@ -76,7 +76,7 @@ To notify SR-IOV core of Virtual Function Migration:
Following piece of code illustrates the usage of the SR-IOV API. Following piece of code illustrates the usage of the SR-IOV API.
static int __devinit dev_probe(struct pci_dev *dev, const struct pci_device_id *id) static int dev_probe(struct pci_dev *dev, const struct pci_device_id *id)
{ {
pci_enable_sriov(dev, NR_VIRTFN); pci_enable_sriov(dev, NR_VIRTFN);
@ -85,7 +85,7 @@ static int __devinit dev_probe(struct pci_dev *dev, const struct pci_device_id *
return 0; return 0;
} }
static void __devexit dev_remove(struct pci_dev *dev) static void dev_remove(struct pci_dev *dev)
{ {
pci_disable_sriov(dev); pci_disable_sriov(dev);
@ -131,7 +131,7 @@ static struct pci_driver dev_driver = {
.name = "SR-IOV Physical Function driver", .name = "SR-IOV Physical Function driver",
.id_table = dev_id_table, .id_table = dev_id_table,
.probe = dev_probe, .probe = dev_probe,
.remove = __devexit_p(dev_remove), .remove = dev_remove,
.suspend = dev_suspend, .suspend = dev_suspend,
.resume = dev_resume, .resume = dev_resume,
.shutdown = dev_shutdown, .shutdown = dev_shutdown,

View File

@ -183,12 +183,6 @@ Please mark the initialization and cleanup functions where appropriate
initializes. initializes.
__exit Exit code. Ignored for non-modular drivers. __exit Exit code. Ignored for non-modular drivers.
__devinit Device initialization code.
Identical to __init if the kernel is not compiled
with CONFIG_HOTPLUG, normal function otherwise.
__devexit The same for __exit.
Tips on when/where to use the above attributes: Tips on when/where to use the above attributes:
o The module_init()/module_exit() functions (and all o The module_init()/module_exit() functions (and all
initialization functions called _only_ from these) initialization functions called _only_ from these)
@ -196,20 +190,6 @@ Tips on when/where to use the above attributes:
o Do not mark the struct pci_driver. o Do not mark the struct pci_driver.
o The ID table array should be marked __devinitconst; this is done
automatically if the table is declared with DEFINE_PCI_DEVICE_TABLE().
o The probe() and remove() functions should be marked __devinit
and __devexit respectively. All initialization functions
exclusively called by the probe() routine, can be marked __devinit.
Ditto for remove() and __devexit.
o If mydriver_remove() is marked with __devexit(), then all address
references to mydriver_remove must use __devexit_p(mydriver_remove)
(in the struct pci_driver declaration for example).
__devexit_p() will generate the function name _or_ NULL if the
function will be discarded. For an example, see drivers/net/tg3.c.
o Do NOT mark a function if you are not sure which mark to use. o Do NOT mark a function if you are not sure which mark to use.
Better to not mark the function than mark the function wrong. Better to not mark the function than mark the function wrong.

View File

@ -185,7 +185,7 @@ input driver:
.acpi_match_table ACPI_PTR(mpu3050_acpi_match), .acpi_match_table ACPI_PTR(mpu3050_acpi_match),
}, },
.probe = mpu3050_probe, .probe = mpu3050_probe,
.remove = __devexit_p(mpu3050_remove), .remove = mpu3050_remove,
.id_table = mpu3050_ids, .id_table = mpu3050_ids,
}; };

View File

@ -60,11 +60,6 @@ clks: clkctrl@80040000 {
compatible = "fsl,imx23-clkctrl"; compatible = "fsl,imx23-clkctrl";
reg = <0x80040000 0x2000>; reg = <0x80040000 0x2000>;
#clock-cells = <1>; #clock-cells = <1>;
clock-output-names =
...
"uart", /* 32 */
...
"end_of_list";
}; };
auart0: serial@8006c000 { auart0: serial@8006c000 {

View File

@ -146,10 +146,6 @@ clks: ccm@53f80000 {
compatible = "fsl,imx25-ccm"; compatible = "fsl,imx25-ccm";
reg = <0x53f80000 0x4000>; reg = <0x53f80000 0x4000>;
interrupts = <31>; interrupts = <31>;
clock-output-names = ...
"uart_ipg",
"uart_serial",
...;
}; };
uart1: serial@43f90000 { uart1: serial@43f90000 {

View File

@ -83,11 +83,6 @@ clks: clkctrl@80040000 {
compatible = "fsl,imx28-clkctrl"; compatible = "fsl,imx28-clkctrl";
reg = <0x80040000 0x2000>; reg = <0x80040000 0x2000>;
#clock-cells = <1>; #clock-cells = <1>;
clock-output-names =
...
"uart", /* 45 */
...
"end_of_list";
}; };
auart0: serial@8006a000 { auart0: serial@8006a000 {

View File

@ -211,10 +211,6 @@ clks: ccm@020c4000 {
reg = <0x020c4000 0x4000>; reg = <0x020c4000 0x4000>;
interrupts = <0 87 0x04 0 88 0x04>; interrupts = <0 87 0x04 0 88 0x04>;
#clock-cells = <1>; #clock-cells = <1>;
clock-output-names = ...
"uart_ipg",
"uart_serial",
...;
}; };
uart1: serial@02020000 { uart1: serial@02020000 {

View File

@ -1,4 +1,19 @@
GPIO line that should be set high/low to power off a device Driver a GPIO line that can be used to turn the power off.
The driver supports both level triggered and edge triggered power off.
At driver load time, the driver will request the given gpio line and
install a pm_power_off handler. If the optional properties 'input' is
not found, the GPIO line will be driven in the inactive
state. Otherwise its configured as an input.
When the pm_power_off is called, the gpio is configured as an output,
and drive active, so triggering a level triggered power off
condition. This will also cause an inactive->active edge condition, so
triggering positive edge triggered power off. After a delay of 100ms,
the GPIO is set to inactive, thus causing an active->inactive edge,
triggering negative edge triggered power off. After another 100ms
delay the GPIO is driver active again. If the power is still on and
the CPU still running after a 3000ms delay, a WARN_ON(1) is emitted.
Required properties: Required properties:
- compatible : should be "gpio-poweroff". - compatible : should be "gpio-poweroff".
@ -13,10 +28,9 @@ Optional properties:
property is not specified, the GPIO is initialized as an output in its property is not specified, the GPIO is initialized as an output in its
inactive state. inactive state.
Examples: Examples:
gpio-poweroff { gpio-poweroff {
compatible = "gpio-poweroff"; compatible = "gpio-poweroff";
gpios = <&gpio 4 0>; /* GPIO 4 Active Low */ gpios = <&gpio 4 0>;
}; };

View File

@ -0,0 +1,47 @@
CSR SiRFprimaII pinmux controller
Required properties:
- compatible : "sirf,prima2-pinctrl"
- reg : Address range of the pinctrl registers
- interrupts : Interrupts used by every GPIO group
- gpio-controller : Indicates this device is a GPIO controller
- interrupt-controller : Marks the device node as an interrupt controller
Optional properties:
- sirf,pullups : if n-th bit of m-th bank is set, set a pullup on GPIO-n of bank m
- sirf,pulldowns : if n-th bit of m-th bank is set, set a pulldown on GPIO-n of bank m
Please refer to pinctrl-bindings.txt in this directory for details of the common
pinctrl bindings used by client devices.
SiRFprimaII's pinmux nodes act as a container for an abitrary number of subnodes.
Each of these subnodes represents some desired configuration for a group of pins.
Required subnode-properties:
- sirf,pins : An array of strings. Each string contains the name of a group.
- sirf,function: A string containing the name of the function to mux to the
group.
Valid values for group and function names can be found from looking at the
group and function arrays in driver files:
drivers/pinctrl/pinctrl-sirf.c
For example, pinctrl might have subnodes like the following:
uart2_pins_a: uart2@0 {
uart {
sirf,pins = "uart2grp";
sirf,function = "uart2";
};
};
uart2_noflow_pins_a: uart2@1 {
uart {
sirf,pins = "uart2_nostreamctrlgrp";
sirf,function = "uart2_nostreamctrl";
};
};
For a specific board, if it wants to use uart2 without hardware flow control,
it can add the following to its board-specific .dts file.
uart2: uart@0xb0070000 {
pinctrl-names = "default";
pinctrl-0 = <&uart2_noflow_pins_a>;
}

View File

@ -91,7 +91,7 @@ Example (from the nxp OHCI driver):
static const unsigned short normal_i2c[] = { 0x2c, 0x2d, I2C_CLIENT_END }; static const unsigned short normal_i2c[] = { 0x2c, 0x2d, I2C_CLIENT_END };
static int __devinit usb_hcd_nxp_probe(struct platform_device *pdev) static int usb_hcd_nxp_probe(struct platform_device *pdev)
{ {
(...) (...)
struct i2c_adapter *i2c_adap; struct i2c_adapter *i2c_adap;

View File

@ -36,7 +36,7 @@ neigh/default/unres_qlen_bytes - INTEGER
The maximum number of bytes which may be used by packets The maximum number of bytes which may be used by packets
queued for each unresolved address by other network layers. queued for each unresolved address by other network layers.
(added in linux 3.3) (added in linux 3.3)
Seting negative value is meaningless and will retrun error. Setting negative value is meaningless and will return error.
Default: 65536 Bytes(64KB) Default: 65536 Bytes(64KB)
neigh/default/unres_qlen - INTEGER neigh/default/unres_qlen - INTEGER
@ -215,7 +215,7 @@ tcp_ecn - INTEGER
Possible values are: Possible values are:
0 Disable ECN. Neither initiate nor accept ECN. 0 Disable ECN. Neither initiate nor accept ECN.
1 Always request ECN on outgoing connection attempts. 1 Always request ECN on outgoing connection attempts.
2 Enable ECN when requested by incomming connections 2 Enable ECN when requested by incoming connections
but do not request ECN on outgoing connections. but do not request ECN on outgoing connections.
Default: 2 Default: 2
@ -503,7 +503,7 @@ tcp_fastopen - INTEGER
tcp_syn_retries - INTEGER tcp_syn_retries - INTEGER
Number of times initial SYNs for an active TCP connection attempt Number of times initial SYNs for an active TCP connection attempt
will be retransmitted. Should not be higher than 255. Default value will be retransmitted. Should not be higher than 255. Default value
is 6, which corresponds to 63seconds till the last restransmission is 6, which corresponds to 63seconds till the last retransmission
with the current initial RTO of 1second. With this the final timeout with the current initial RTO of 1second. With this the final timeout
for an active TCP connection attempt will happen after 127seconds. for an active TCP connection attempt will happen after 127seconds.
@ -1331,6 +1331,12 @@ force_tllao - BOOLEAN
race condition where the sender deletes the cached link-layer address race condition where the sender deletes the cached link-layer address
prior to receiving a response to a previous solicitation." prior to receiving a response to a previous solicitation."
ndisc_notify - BOOLEAN
Define mode for notification of address and device changes.
0 - (default): do nothing
1 - Generate unsolicited neighbour advertisements when device is brought
up or hardware address changes.
icmp/*: icmp/*:
ratelimit - INTEGER ratelimit - INTEGER
Limit the maximal rates for sending ICMPv6 packets. Limit the maximal rates for sending ICMPv6 packets.
@ -1530,7 +1536,7 @@ cookie_hmac_alg - STRING
* sha1 * sha1
* none * none
Ability to assign md5 or sha1 as the selected alg is predicated on the Ability to assign md5 or sha1 as the selected alg is predicated on the
configuarion of those algorithms at build time (CONFIG_CRYPTO_MD5 and configuration of those algorithms at build time (CONFIG_CRYPTO_MD5 and
CONFIG_CRYPTO_SHA1). CONFIG_CRYPTO_SHA1).
Default: Dependent on configuration. MD5 if available, else SHA1 if Default: Dependent on configuration. MD5 if available, else SHA1 if
@ -1548,7 +1554,7 @@ rcvbuf_policy - INTEGER
blocking. blocking.
1: rcvbuf space is per association 1: rcvbuf space is per association
0: recbuf space is per socket 0: rcvbuf space is per socket
Default: 0 Default: 0

View File

@ -642,12 +642,13 @@ out the following operations:
* During system suspend it calls pm_runtime_get_noresume() and * During system suspend it calls pm_runtime_get_noresume() and
pm_runtime_barrier() for every device right before executing the pm_runtime_barrier() for every device right before executing the
subsystem-level .suspend() callback for it. In addition to that it calls subsystem-level .suspend() callback for it. In addition to that it calls
pm_runtime_disable() for every device right after executing the __pm_runtime_disable() with 'false' as the second argument for every device
subsystem-level .suspend() callback for it. right before executing the subsystem-level .suspend_late() callback for it.
* During system resume it calls pm_runtime_enable() and pm_runtime_put_sync() * During system resume it calls pm_runtime_enable() and pm_runtime_put_sync()
for every device right before and right after executing the subsystem-level for every device right after executing the subsystem-level .resume_early()
.resume() callback for it, respectively. callback and right after executing the subsystem-level .resume() callback
for it, respectively.
7. Generic subsystem callbacks 7. Generic subsystem callbacks

View File

@ -236,7 +236,7 @@ static int rpmsg_sample_probe(struct rpmsg_channel *rpdev)
return 0; return 0;
} }
static void __devexit rpmsg_sample_remove(struct rpmsg_channel *rpdev) static void rpmsg_sample_remove(struct rpmsg_channel *rpdev)
{ {
dev_info(&rpdev->dev, "rpmsg sample client driver is removed\n"); dev_info(&rpdev->dev, "rpmsg sample client driver is removed\n");
} }
@ -253,7 +253,7 @@ static struct rpmsg_driver rpmsg_sample_client = {
.id_table = rpmsg_driver_sample_id_table, .id_table = rpmsg_driver_sample_id_table,
.probe = rpmsg_sample_probe, .probe = rpmsg_sample_probe,
.callback = rpmsg_sample_cb, .callback = rpmsg_sample_cb,
.remove = __devexit_p(rpmsg_sample_remove), .remove = rpmsg_sample_remove,
}; };
static int __init init(void) static int __init init(void)

View File

@ -345,7 +345,7 @@ SPI protocol drivers somewhat resemble platform device drivers:
}, },
.probe = CHIP_probe, .probe = CHIP_probe,
.remove = __devexit_p(CHIP_remove), .remove = CHIP_remove,
.suspend = CHIP_suspend, .suspend = CHIP_suspend,
.resume = CHIP_resume, .resume = CHIP_resume,
}; };
@ -355,7 +355,7 @@ device whose board_info gave a modalias of "CHIP". Your probe() code
might look like this unless you're creating a device which is managing might look like this unless you're creating a device which is managing
a bus (appearing under /sys/class/spi_master). a bus (appearing under /sys/class/spi_master).
static int __devinit CHIP_probe(struct spi_device *spi) static int CHIP_probe(struct spi_device *spi)
{ {
struct CHIP *chip; struct CHIP *chip;
struct CHIP_platform_data *pdata; struct CHIP_platform_data *pdata;

View File

@ -38,6 +38,7 @@ show up in /proc/sys/kernel:
- l2cr [ PPC only ] - l2cr [ PPC only ]
- modprobe ==> Documentation/debugging-modules.txt - modprobe ==> Documentation/debugging-modules.txt
- modules_disabled - modules_disabled
- msg_next_id [ sysv ipc ]
- msgmax - msgmax
- msgmnb - msgmnb
- msgmni - msgmni
@ -62,7 +63,9 @@ show up in /proc/sys/kernel:
- rtsig-max - rtsig-max
- rtsig-nr - rtsig-nr
- sem - sem
- sem_next_id [ sysv ipc ]
- sg-big-buff [ generic SCSI device (sg) ] - sg-big-buff [ generic SCSI device (sg) ]
- shm_next_id [ sysv ipc ]
- shm_rmid_forced - shm_rmid_forced
- shmall - shmall
- shmmax [ sysv ipc ] - shmmax [ sysv ipc ]
@ -320,6 +323,22 @@ to false.
============================================================== ==============================================================
msg_next_id, sem_next_id, and shm_next_id:
These three toggles allows to specify desired id for next allocated IPC
object: message, semaphore or shared memory respectively.
By default they are equal to -1, which means generic allocation logic.
Possible values to set are in range {0..INT_MAX}.
Notes:
1) kernel doesn't guarantee, that new object will have desired id. So,
it's up to userspace, how to handle an object with "wrong" id.
2) Toggle with non-default value will be set back to -1 by kernel after
successful IPC object allocation.
==============================================================
nmi_watchdog: nmi_watchdog:
Enables/Disables the NMI watchdog on x86 systems. When the value is Enables/Disables the NMI watchdog on x86 systems. When the value is
@ -542,6 +561,19 @@ are doing anyway :)
============================================================== ==============================================================
shmall:
This parameter sets the total amount of shared memory pages that
can be used system wide. Hence, SHMALL should always be at least
ceil(shmmax/PAGE_SIZE).
If you are not sure what the default PAGE_SIZE is on your Linux
system, you can run the following command:
# getconf PAGE_SIZE
==============================================================
shmmax: shmmax:
This value can be used to query and set the run time limit This value can be used to query and set the run time limit

View File

@ -174,8 +174,7 @@ The recommended approach is as follows:
static atomic_t drv_instance = ATOMIC_INIT(0); static atomic_t drv_instance = ATOMIC_INIT(0);
static int __devinit drv_probe(struct pci_dev *pdev, static int drv_probe(struct pci_dev *pdev, const struct pci_device_id *pci_id)
const struct pci_device_id *pci_id)
{ {
... ...
state->instance = atomic_inc_return(&drv_instance) - 1; state->instance = atomic_inc_return(&drv_instance) - 1;

View File

@ -182,8 +182,7 @@ int iterate(void *p)
static atomic_t drv_instance = ATOMIC_INIT(0); static atomic_t drv_instance = ATOMIC_INIT(0);
static int __devinit drv_probe(struct pci_dev *pdev, static int drv_probe(struct pci_dev *pdev, const struct pci_device_id *pci_id)
const struct pci_device_id *pci_id)
{ {
... ...
state->instance = atomic_inc_return(&drv_instance) - 1; state->instance = atomic_inc_return(&drv_instance) - 1;

View File

@ -449,6 +449,7 @@ T: git git://git.kernel.org/pub/scm/linux/kernel/git/airlied/drm-2.6.git
S: Maintained S: Maintained
F: drivers/char/agp/ F: drivers/char/agp/
F: include/linux/agp* F: include/linux/agp*
F: include/uapi/linux/agp*
AHA152X SCSI DRIVER AHA152X SCSI DRIVER
M: "Juergen E. Fischer" <fischer@norbit.de> M: "Juergen E. Fischer" <fischer@norbit.de>
@ -589,6 +590,7 @@ M: Jiri Kosina <jkosina@suse.cz>
S: Odd fixes S: Odd fixes
F: arch/x86/kernel/apm_32.c F: arch/x86/kernel/apm_32.c
F: include/linux/apm_bios.h F: include/linux/apm_bios.h
F: include/uapi/linux/apm_bios.h
F: drivers/char/apm-emulation.c F: drivers/char/apm-emulation.c
APPLE BCM5974 MULTITOUCH DRIVER APPLE BCM5974 MULTITOUCH DRIVER
@ -1005,7 +1007,6 @@ F: drivers/mmc/host/msm_sdcc.c
F: drivers/mmc/host/msm_sdcc.h F: drivers/mmc/host/msm_sdcc.h
F: drivers/tty/serial/msm_serial.h F: drivers/tty/serial/msm_serial.h
F: drivers/tty/serial/msm_serial.c F: drivers/tty/serial/msm_serial.c
F: drivers/platform/msm/
F: drivers/*/pm8???-* F: drivers/*/pm8???-*
F: include/linux/mfd/pm8xxx/ F: include/linux/mfd/pm8xxx/
T: git git://git.kernel.org/pub/scm/linux/kernel/git/davidb/linux-msm.git T: git git://git.kernel.org/pub/scm/linux/kernel/git/davidb/linux-msm.git
@ -1069,7 +1070,6 @@ M: Russell King <linux@arm.linux.org.uk>
L: linux-arm-kernel@lists.infradead.org (moderated for non-subscribers) L: linux-arm-kernel@lists.infradead.org (moderated for non-subscribers)
W: http://www.arm.linux.org.uk/ W: http://www.arm.linux.org.uk/
S: Maintained S: Maintained
F: arch/arm/common/time-acorn.c
F: arch/arm/include/asm/hardware/entry-macro-iomd.S F: arch/arm/include/asm/hardware/entry-macro-iomd.S
F: arch/arm/include/asm/hardware/ioc.h F: arch/arm/include/asm/hardware/ioc.h
F: arch/arm/include/asm/hardware/iomd.h F: arch/arm/include/asm/hardware/iomd.h
@ -1094,7 +1094,6 @@ W: http://www.fluff.org/ben/linux/
S: Maintained S: Maintained
F: arch/arm/plat-samsung/ F: arch/arm/plat-samsung/
F: arch/arm/plat-s3c24xx/ F: arch/arm/plat-s3c24xx/
F: arch/arm/plat-s5p/
F: arch/arm/mach-s3c24*/ F: arch/arm/mach-s3c24*/
F: arch/arm/mach-s3c64xx/ F: arch/arm/mach-s3c64xx/
F: drivers/*/*s3c2410* F: drivers/*/*s3c2410*
@ -1125,7 +1124,6 @@ M: Sylwester Nawrocki <s.nawrocki@samsung.com>
L: linux-arm-kernel@lists.infradead.org L: linux-arm-kernel@lists.infradead.org
L: linux-media@vger.kernel.org L: linux-media@vger.kernel.org
S: Maintained S: Maintained
F: arch/arm/plat-s5p/dev-fimc*
F: arch/arm/plat-samsung/include/plat/*fimc* F: arch/arm/plat-samsung/include/plat/*fimc*
F: drivers/media/platform/s5p-fimc/ F: drivers/media/platform/s5p-fimc/
@ -1136,7 +1134,7 @@ M: Jeongtae Park <jtp.park@samsung.com>
L: linux-arm-kernel@lists.infradead.org L: linux-arm-kernel@lists.infradead.org
L: linux-media@vger.kernel.org L: linux-media@vger.kernel.org
S: Maintained S: Maintained
F: arch/arm/plat-s5p/dev-mfc.c F: arch/arm/plat-samsung/s5p-dev-mfc.c
F: drivers/media/platform/s5p-mfc/ F: drivers/media/platform/s5p-mfc/
ARM/SAMSUNG S5P SERIES TV SUBSYSTEM SUPPORT ARM/SAMSUNG S5P SERIES TV SUBSYSTEM SUPPORT
@ -1254,7 +1252,7 @@ F: drivers/video/vt8500lcdfb.*
F: drivers/video/wm8505fb* F: drivers/video/wm8505fb*
F: drivers/video/wmt_ge_rops.* F: drivers/video/wmt_ge_rops.*
F: drivers/tty/serial/vt8500_serial.c F: drivers/tty/serial/vt8500_serial.c
F: drivers/rtc/rtc-vt8500-c F: drivers/rtc/rtc-vt8500.c
F: drivers/mmc/host/wmt-sdmmc.c F: drivers/mmc/host/wmt-sdmmc.c
ARM/ZIPIT Z2 SUPPORT ARM/ZIPIT Z2 SUPPORT
@ -1388,6 +1386,7 @@ W: http://linux-atm.sourceforge.net
S: Maintained S: Maintained
F: drivers/atm/ F: drivers/atm/
F: include/linux/atm* F: include/linux/atm*
F: include/uapi/linux/atm*
ATMEL AT91 / AT32 MCI DRIVER ATMEL AT91 / AT32 MCI DRIVER
M: Ludovic Desroches <ludovic.desroches@atmel.com> M: Ludovic Desroches <ludovic.desroches@atmel.com>
@ -1406,13 +1405,13 @@ L: linux-arm-kernel@lists.infradead.org (moderated for non-subscribers)
S: Supported S: Supported
F: drivers/dma/at_hdmac.c F: drivers/dma/at_hdmac.c
F: drivers/dma/at_hdmac_regs.h F: drivers/dma/at_hdmac_regs.h
F: arch/arm/mach-at91/include/mach/at_hdmac.h F: include/linux/platform_data/dma-atmel.h
ATMEL ISI DRIVER ATMEL ISI DRIVER
M: Josh Wu <josh.wu@atmel.com> M: Josh Wu <josh.wu@atmel.com>
L: linux-media@vger.kernel.org L: linux-media@vger.kernel.org
S: Supported S: Supported
F: drivers/media/platform/atmel-isi.c F: drivers/media/platform/soc_camera/atmel-isi.c
F: include/media/atmel-isi.h F: include/media/atmel-isi.h
ATMEL LCDFB DRIVER ATMEL LCDFB DRIVER
@ -1467,6 +1466,7 @@ W: http://people.redhat.com/sgrubb/audit/
T: git git://git.kernel.org/pub/scm/linux/kernel/git/viro/audit-current.git T: git git://git.kernel.org/pub/scm/linux/kernel/git/viro/audit-current.git
S: Maintained S: Maintained
F: include/linux/audit.h F: include/linux/audit.h
F: include/uapi/linux/audit.h
F: kernel/audit* F: kernel/audit*
AUXILIARY DISPLAY DRIVERS AUXILIARY DISPLAY DRIVERS
@ -1497,7 +1497,7 @@ M: Ralf Baechle <ralf@linux-mips.org>
L: linux-hams@vger.kernel.org L: linux-hams@vger.kernel.org
W: http://www.linux-ax25.org/ W: http://www.linux-ax25.org/
S: Maintained S: Maintained
F: include/linux/ax25.h F: include/uapi/linux/ax25.h
F: include/net/ax25.h F: include/net/ax25.h
F: net/ax25/ F: net/ax25/
@ -1558,7 +1558,7 @@ M: "Tigran A. Aivazian" <tigran@aivazian.fsnet.co.uk>
S: Maintained S: Maintained
F: Documentation/filesystems/bfs.txt F: Documentation/filesystems/bfs.txt
F: fs/bfs/ F: fs/bfs/
F: include/linux/bfs_fs.h F: include/uapi/linux/bfs_fs.h
BLACKFIN ARCHITECTURE BLACKFIN ARCHITECTURE
M: Mike Frysinger <vapier@gentoo.org> M: Mike Frysinger <vapier@gentoo.org>
@ -1655,7 +1655,7 @@ L: netdev@vger.kernel.org
W: http://sourceforge.net/projects/bonding/ W: http://sourceforge.net/projects/bonding/
S: Supported S: Supported
F: drivers/net/bonding/ F: drivers/net/bonding/
F: include/linux/if_bonding.h F: include/uapi/linux/if_bonding.h
BROADCOM B44 10/100 ETHERNET DRIVER BROADCOM B44 10/100 ETHERNET DRIVER
M: Gary Zambrano <zambrano@broadcom.com> M: Gary Zambrano <zambrano@broadcom.com>
@ -1734,6 +1734,7 @@ L: linux-scsi@vger.kernel.org
S: Supported S: Supported
F: block/bsg.c F: block/bsg.c
F: include/linux/bsg.h F: include/linux/bsg.h
F: include/uapi/linux/bsg.h
BT87X AUDIO DRIVER BT87X AUDIO DRIVER
M: Clemens Ladisch <clemens@ladisch.de> M: Clemens Ladisch <clemens@ladisch.de>
@ -1804,7 +1805,7 @@ L: netdev@vger.kernel.org
S: Supported S: Supported
F: Documentation/networking/caif/ F: Documentation/networking/caif/
F: drivers/net/caif/ F: drivers/net/caif/
F: include/linux/caif/ F: include/uapi/linux/caif/
F: include/net/caif/ F: include/net/caif/
F: net/caif/ F: net/caif/
@ -1825,11 +1826,11 @@ W: http://gitorious.org/linux-can
T: git git://gitorious.org/linux-can/linux-can-next.git T: git git://gitorious.org/linux-can/linux-can-next.git
S: Maintained S: Maintained
F: net/can/ F: net/can/
F: include/linux/can.h
F: include/linux/can/core.h F: include/linux/can/core.h
F: include/linux/can/bcm.h F: include/uapi/linux/can.h
F: include/linux/can/raw.h F: include/uapi/linux/can/bcm.h
F: include/linux/can/gw.h F: include/uapi/linux/can/raw.h
F: include/uapi/linux/can/gw.h
CAN NETWORK DRIVERS CAN NETWORK DRIVERS
M: Wolfgang Grandegger <wg@grandegger.com> M: Wolfgang Grandegger <wg@grandegger.com>
@ -1840,15 +1841,16 @@ T: git git://gitorious.org/linux-can/linux-can-next.git
S: Maintained S: Maintained
F: drivers/net/can/ F: drivers/net/can/
F: include/linux/can/dev.h F: include/linux/can/dev.h
F: include/linux/can/error.h
F: include/linux/can/netlink.h
F: include/linux/can/platform/ F: include/linux/can/platform/
F: include/uapi/linux/can/error.h
F: include/uapi/linux/can/netlink.h
CAPABILITIES CAPABILITIES
M: Serge Hallyn <serge.hallyn@canonical.com> M: Serge Hallyn <serge.hallyn@canonical.com>
L: linux-security-module@vger.kernel.org L: linux-security-module@vger.kernel.org
S: Supported S: Supported
F: include/linux/capability.h F: include/linux/capability.h
F: include/uapi/linux/capability.h
F: security/capability.c F: security/capability.c
F: security/commoncap.c F: security/commoncap.c
F: kernel/capability.c F: kernel/capability.c
@ -1861,6 +1863,7 @@ W: http://www.ibm.com/developerworks/power/cell/
S: Supported S: Supported
F: arch/powerpc/include/asm/cell*.h F: arch/powerpc/include/asm/cell*.h
F: arch/powerpc/include/asm/spu*.h F: arch/powerpc/include/asm/spu*.h
F: arch/powerpc/include/uapi/asm/spu*.h
F: arch/powerpc/oprofile/*cell* F: arch/powerpc/oprofile/*cell*
F: arch/powerpc/platforms/cell/ F: arch/powerpc/platforms/cell/
@ -1909,7 +1912,7 @@ W: http://wireless.kernel.org/
T: git git://git.kernel.org/pub/scm/linux/kernel/git/jberg/mac80211.git T: git git://git.kernel.org/pub/scm/linux/kernel/git/jberg/mac80211.git
T: git git://git.kernel.org/pub/scm/linux/kernel/git/jberg/mac80211-next.git T: git git://git.kernel.org/pub/scm/linux/kernel/git/jberg/mac80211-next.git
S: Maintained S: Maintained
F: include/linux/nl80211.h F: include/uapi/linux/nl80211.h
F: include/net/cfg80211.h F: include/net/cfg80211.h
F: net/wireless/* F: net/wireless/*
X: net/wireless/wext* X: net/wireless/wext*
@ -2012,6 +2015,7 @@ S: Maintained
F: Documentation/filesystems/coda.txt F: Documentation/filesystems/coda.txt
F: fs/coda/ F: fs/coda/
F: include/linux/coda*.h F: include/linux/coda*.h
F: include/uapi/linux/coda*.h
COMMON CLK FRAMEWORK COMMON CLK FRAMEWORK
M: Mike Turquette <mturquette@linaro.org> M: Mike Turquette <mturquette@linaro.org>
@ -2266,6 +2270,7 @@ W: http://www.cyclades.com/
S: Orphan S: Orphan
F: drivers/tty/cyclades.c F: drivers/tty/cyclades.c
F: include/linux/cyclades.h F: include/linux/cyclades.h
F: include/uapi/linux/cyclades.h
CYCLADES PC300 DRIVER CYCLADES PC300 DRIVER
W: http://www.cyclades.com/ W: http://www.cyclades.com/
@ -2323,6 +2328,7 @@ L: dccp@vger.kernel.org
W: http://www.linuxfoundation.org/collaborate/workgroups/networking/dccp W: http://www.linuxfoundation.org/collaborate/workgroups/networking/dccp
S: Maintained S: Maintained
F: include/linux/dccp.h F: include/linux/dccp.h
F: include/uapi/linux/dccp.h
F: include/linux/tfrc.h F: include/linux/tfrc.h
F: net/dccp/ F: net/dccp/
@ -2349,7 +2355,7 @@ M: Massimo Dal Zotto <dz@debian.org>
W: http://www.debian.org/~dz/i8k/ W: http://www.debian.org/~dz/i8k/
S: Maintained S: Maintained
F: drivers/char/i8k.c F: drivers/char/i8k.c
F: include/linux/i8k.h F: include/uapi/linux/i8k.h
DELL SYSTEMS MANAGEMENT BASE DRIVER (dcdbas) DELL SYSTEMS MANAGEMENT BASE DRIVER (dcdbas)
M: Doug Warzecha <Douglas_Warzecha@dell.com> M: Doug Warzecha <Douglas_Warzecha@dell.com>
@ -2422,6 +2428,7 @@ S: Maintained
F: Documentation/filesystems/quota.txt F: Documentation/filesystems/quota.txt
F: fs/quota/ F: fs/quota/
F: include/linux/quota*.h F: include/linux/quota*.h
F: include/uapi/linux/quota*.h
DISPLAYLINK USB 2.0 FRAMEBUFFER DRIVER (UDLFB) DISPLAYLINK USB 2.0 FRAMEBUFFER DRIVER (UDLFB)
M: Bernie Thompson <bernie@plugable.com> M: Bernie Thompson <bernie@plugable.com>
@ -2528,6 +2535,7 @@ T: git git://git.kernel.org/pub/scm/linux/kernel/git/airlied/drm-2.6.git
S: Maintained S: Maintained
F: drivers/gpu/drm/ F: drivers/gpu/drm/
F: include/drm/ F: include/drm/
F: include/uapi/drm/
INTEL DRM DRIVERS (excluding Poulsbo, Moorestown and derivative chipsets) INTEL DRM DRIVERS (excluding Poulsbo, Moorestown and derivative chipsets)
M: Daniel Vetter <daniel.vetter@ffwll.ch> M: Daniel Vetter <daniel.vetter@ffwll.ch>
@ -2537,6 +2545,7 @@ T: git git://people.freedesktop.org/~danvet/drm-intel
S: Supported S: Supported
F: drivers/gpu/drm/i915 F: drivers/gpu/drm/i915
F: include/drm/i915* F: include/drm/i915*
F: include/uapi/drm/i915*
DRM DRIVERS FOR EXYNOS DRM DRIVERS FOR EXYNOS
M: Inki Dae <inki.dae@samsung.com> M: Inki Dae <inki.dae@samsung.com>
@ -2548,6 +2557,7 @@ T: git git://git.kernel.org/pub/scm/linux/kernel/git/daeinki/drm-exynos.git
S: Supported S: Supported
F: drivers/gpu/drm/exynos F: drivers/gpu/drm/exynos
F: include/drm/exynos* F: include/drm/exynos*
F: include/uapi/drm/exynos*
DRM DRIVERS FOR NVIDIA TEGRA DRM DRIVERS FOR NVIDIA TEGRA
M: Thierry Reding <thierry.reding@avionic-design.de> M: Thierry Reding <thierry.reding@avionic-design.de>
@ -2622,7 +2632,7 @@ W: http://github.com/mkrufky
Q: http://patchwork.linuxtv.org/project/linux-media/list/ Q: http://patchwork.linuxtv.org/project/linux-media/list/
T: git git://linuxtv.org/media_tree.git T: git git://linuxtv.org/media_tree.git
S: Maintained S: Maintained
F: drivers/media/usb/dvb-usb-v2/cxusb* F: drivers/media/usb/dvb-usb/cxusb*
DVB_USB_CYPRESS_FIRMWARE MEDIA DRIVER DVB_USB_CYPRESS_FIRMWARE MEDIA DRIVER
M: Antti Palosaari <crope@iki.fi> M: Antti Palosaari <crope@iki.fi>
@ -2722,6 +2732,7 @@ L: netfilter-devel@vger.kernel.org
W: http://ebtables.sourceforge.net/ W: http://ebtables.sourceforge.net/
S: Maintained S: Maintained
F: include/linux/netfilter_bridge/ebt_*.h F: include/linux/netfilter_bridge/ebt_*.h
F: include/uapi/linux/netfilter_bridge/ebt_*.h
F: net/bridge/netfilter/ebt*.c F: net/bridge/netfilter/ebt*.c
EC100 MEDIA DRIVER EC100 MEDIA DRIVER
@ -2933,12 +2944,6 @@ M: Maxim Levitsky <maximlevitsky@gmail.com>
S: Maintained S: Maintained
F: drivers/media/rc/ene_ir.* F: drivers/media/rc/ene_ir.*
EPSON 1355 FRAMEBUFFER DRIVER
M: Christopher Hoover <ch@murgatroid.com>
M: Christopher Hoover <ch@hpl.hp.com>
S: Maintained
F: drivers/video/epson1355fb.c
EPSON S1D13XXX FRAMEBUFFER DRIVER EPSON S1D13XXX FRAMEBUFFER DRIVER
M: Kristoffer Ericson <kristoffer.ericson@gmail.com> M: Kristoffer Ericson <kristoffer.ericson@gmail.com>
S: Maintained S: Maintained
@ -3051,6 +3056,7 @@ M: Eric Paris <eparis@redhat.com>
S: Maintained S: Maintained
F: fs/notify/fanotify/ F: fs/notify/fanotify/
F: include/linux/fanotify.h F: include/linux/fanotify.h
F: include/uapi/linux/fanotify.h
FARSYNC SYNCHRONOUS DRIVER FARSYNC SYNCHRONOUS DRIVER
M: Kevin Curtis <kevin.curtis@farsite.co.uk> M: Kevin Curtis <kevin.curtis@farsite.co.uk>
@ -3074,6 +3080,7 @@ F: drivers/scsi/fcoe/
F: include/scsi/fc/ F: include/scsi/fc/
F: include/scsi/libfc.h F: include/scsi/libfc.h
F: include/scsi/libfcoe.h F: include/scsi/libfcoe.h
F: include/uapi/scsi/fc/
FILE LOCKING (flock() and fcntl()/lockf()) FILE LOCKING (flock() and fcntl()/lockf())
M: Matthew Wilcox <matthew@wil.cx> M: Matthew Wilcox <matthew@wil.cx>
@ -3081,6 +3088,8 @@ L: linux-fsdevel@vger.kernel.org
S: Maintained S: Maintained
F: include/linux/fcntl.h F: include/linux/fcntl.h
F: include/linux/fs.h F: include/linux/fs.h
F: include/uapi/linux/fcntl.h
F: include/uapi/linux/fs.h
F: fs/fcntl.c F: fs/fcntl.c
F: fs/locks.c F: fs/locks.c
@ -3170,6 +3179,8 @@ F: Documentation/devicetree/bindings/fb/
F: drivers/video/ F: drivers/video/
F: include/video/ F: include/video/
F: include/linux/fb.h F: include/linux/fb.h
F: include/uapi/video/
F: include/uapi/linux/fb.h
FREESCALE DIU FRAMEBUFFER DRIVER FREESCALE DIU FRAMEBUFFER DRIVER
M: Timur Tabi <timur@freescale.com> M: Timur Tabi <timur@freescale.com>
@ -3196,7 +3207,7 @@ M: Sascha Hauer <kernel@pengutronix.de>
L: linux-fbdev@vger.kernel.org L: linux-fbdev@vger.kernel.org
L: linux-arm-kernel@lists.infradead.org (moderated for non-subscribers) L: linux-arm-kernel@lists.infradead.org (moderated for non-subscribers)
S: Maintained S: Maintained
F: arch/arm/plat-mxc/include/mach/imxfb.h F: include/linux/platform_data/video-imxfb.h
F: drivers/video/imxfb.c F: drivers/video/imxfb.c
FREESCALE SOC FS_ENET DRIVER FREESCALE SOC FS_ENET DRIVER
@ -3273,6 +3284,16 @@ F: Documentation/filesystems/caching/
F: fs/fscache/ F: fs/fscache/
F: include/linux/fscache*.h F: include/linux/fscache*.h
F2FS FILE SYSTEM
M: Jaegeuk Kim <jaegeuk.kim@samsung.com>
L: linux-f2fs-devel@lists.sourceforge.net
W: http://en.wikipedia.org/wiki/F2FS
T: git git://git.kernel.org/pub/scm/linux/kernel/git/jaegeuk/f2fs.git
S: Maintained
F: Documentation/filesystems/f2fs.txt
F: fs/f2fs/
F: include/linux/f2fs_fs.h
FUJITSU FR-V (FRV) PORT FUJITSU FR-V (FRV) PORT
M: David Howells <dhowells@redhat.com> M: David Howells <dhowells@redhat.com>
S: Maintained S: Maintained
@ -3304,7 +3325,7 @@ L: fuse-devel@lists.sourceforge.net
W: http://fuse.sourceforge.net/ W: http://fuse.sourceforge.net/
S: Maintained S: Maintained
F: fs/fuse/ F: fs/fuse/
F: include/linux/fuse.h F: include/uapi/linux/fuse.h
FUTURE DOMAIN TMC-16x0 SCSI DRIVER (16-bit) FUTURE DOMAIN TMC-16x0 SCSI DRIVER (16-bit)
M: Rik Faith <faith@cs.unc.edu> M: Rik Faith <faith@cs.unc.edu>
@ -3351,6 +3372,7 @@ L: linux-arch@vger.kernel.org
T: git git://git.kernel.org/pub/scm/linux/kernel/git/arnd/asm-generic.git T: git git://git.kernel.org/pub/scm/linux/kernel/git/arnd/asm-generic.git
S: Maintained S: Maintained
F: include/asm-generic F: include/asm-generic
F: include/uapi/asm-generic
GENERIC UIO DRIVER FOR PCI DEVICES GENERIC UIO DRIVER FOR PCI DEVICES
M: "Michael S. Tsirkin" <mst@redhat.com> M: "Michael S. Tsirkin" <mst@redhat.com>
@ -3367,7 +3389,7 @@ T: git git://git.kernel.org/pub/scm/linux/kernel/git/steve/gfs2-3.0-nmw.git
S: Supported S: Supported
F: Documentation/filesystems/gfs2*.txt F: Documentation/filesystems/gfs2*.txt
F: fs/gfs2/ F: fs/gfs2/
F: include/linux/gfs2_ondisk.h F: include/uapi/linux/gfs2_ondisk.h
GIGASET ISDN DRIVERS GIGASET ISDN DRIVERS
M: Hansjoerg Lipp <hjlipp@web.de> M: Hansjoerg Lipp <hjlipp@web.de>
@ -3377,7 +3399,7 @@ W: http://gigaset307x.sourceforge.net/
S: Maintained S: Maintained
F: Documentation/isdn/README.gigaset F: Documentation/isdn/README.gigaset
F: drivers/isdn/gigaset/ F: drivers/isdn/gigaset/
F: include/linux/gigaset_dev.h F: include/uapi/linux/gigaset_dev.h
GPIO SUBSYSTEM GPIO SUBSYSTEM
M: Grant Likely <grant.likely@secretlab.ca> M: Grant Likely <grant.likely@secretlab.ca>
@ -3534,6 +3556,7 @@ S: Supported
F: Documentation/scsi/hpsa.txt F: Documentation/scsi/hpsa.txt
F: drivers/scsi/hpsa*.[ch] F: drivers/scsi/hpsa*.[ch]
F: include/linux/cciss*.h F: include/linux/cciss*.h
F: include/uapi/linux/cciss*.h
HEWLETT-PACKARD SMART CISS RAID DRIVER (cciss) HEWLETT-PACKARD SMART CISS RAID DRIVER (cciss)
M: Mike Miller <mike.miller@hp.com> M: Mike Miller <mike.miller@hp.com>
@ -3542,6 +3565,7 @@ S: Supported
F: Documentation/blockdev/cciss.txt F: Documentation/blockdev/cciss.txt
F: drivers/block/cciss* F: drivers/block/cciss*
F: include/linux/cciss_ioctl.h F: include/linux/cciss_ioctl.h
F: include/uapi/linux/cciss_ioctl.h
HFS FILESYSTEM HFS FILESYSTEM
L: linux-fsdevel@vger.kernel.org L: linux-fsdevel@vger.kernel.org
@ -3576,6 +3600,7 @@ T: git git://git.kernel.org/pub/scm/linux/kernel/git/jikos/hid.git
S: Maintained S: Maintained
F: drivers/hid/ F: drivers/hid/
F: include/linux/hid* F: include/linux/hid*
F: include/uapi/linux/hid*
HIGH-RESOLUTION TIMERS, CLOCKEVENTS, DYNTICKS HIGH-RESOLUTION TIMERS, CLOCKEVENTS, DYNTICKS
M: Thomas Gleixner <tglx@linutronix.de> M: Thomas Gleixner <tglx@linutronix.de>
@ -3607,7 +3632,7 @@ M: Jes Sorensen <jes@trained-monkey.org>
L: linux-hippi@sunsite.dk L: linux-hippi@sunsite.dk
S: Maintained S: Maintained
F: include/linux/hippidevice.h F: include/linux/hippidevice.h
F: include/linux/if_hippi.h F: include/uapi/linux/if_hippi.h
F: net/802/hippi.c F: net/802/hippi.c
F: drivers/net/hippi/ F: drivers/net/hippi/
@ -3635,6 +3660,7 @@ S: Maintained
F: Documentation/timers/hpet.txt F: Documentation/timers/hpet.txt
F: drivers/char/hpet.c F: drivers/char/hpet.c
F: include/linux/hpet.h F: include/linux/hpet.h
F: include/uapi/linux/hpet.h
HPET: x86 HPET: x86
M: "Venkatesh Pallipadi (Venki)" <venki@google.com> M: "Venkatesh Pallipadi (Venki)" <venki@google.com>
@ -3735,6 +3761,8 @@ F: Documentation/i2c/
F: drivers/i2c/ F: drivers/i2c/
F: include/linux/i2c.h F: include/linux/i2c.h
F: include/linux/i2c-*.h F: include/linux/i2c-*.h
F: include/uapi/linux/i2c.h
F: include/uapi/linux/i2c-*.h
I2C-TAOS-EVM DRIVER I2C-TAOS-EVM DRIVER
M: Jean Delvare <khali@linux-fr.org> M: Jean Delvare <khali@linux-fr.org>
@ -3850,7 +3878,7 @@ T: git git://git.kernel.org/pub/scm/linux/kernel/git/lowpan/lowpan.git
S: Maintained S: Maintained
F: net/ieee802154/ F: net/ieee802154/
F: net/mac802154/ F: net/mac802154/
F: drivers/ieee802154/ F: drivers/net/ieee802154/
IGUANAWORKS USB IR TRANSCEIVER IGUANAWORKS USB IR TRANSCEIVER
M: Sean Young <sean@mess.org> M: Sean Young <sean@mess.org>
@ -3901,7 +3929,7 @@ T: git git://git.kernel.org/pub/scm/linux/kernel/git/roland/infiniband.git
S: Supported S: Supported
F: Documentation/infiniband/ F: Documentation/infiniband/
F: drivers/infiniband/ F: drivers/infiniband/
F: include/linux/if_infiniband.h F: include/uapi/linux/if_infiniband.h
INOTIFY INOTIFY
M: John McCutchan <john@johnmccutchan.com> M: John McCutchan <john@johnmccutchan.com>
@ -3911,6 +3939,7 @@ S: Maintained
F: Documentation/filesystems/inotify.txt F: Documentation/filesystems/inotify.txt
F: fs/notify/inotify/ F: fs/notify/inotify/
F: include/linux/inotify.h F: include/linux/inotify.h
F: include/uapi/linux/inotify.h
INPUT (KEYBOARD, MOUSE, JOYSTICK, TOUCHSCREEN) DRIVERS INPUT (KEYBOARD, MOUSE, JOYSTICK, TOUCHSCREEN) DRIVERS
M: Dmitry Torokhov <dmitry.torokhov@gmail.com> M: Dmitry Torokhov <dmitry.torokhov@gmail.com>
@ -3921,6 +3950,7 @@ T: git git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input.git
S: Maintained S: Maintained
F: drivers/input/ F: drivers/input/
F: include/linux/input.h F: include/linux/input.h
F: include/uapi/linux/input.h
F: include/linux/input/ F: include/linux/input/
INPUT MULTITOUCH (MT) PROTOCOL INPUT MULTITOUCH (MT) PROTOCOL
@ -3941,7 +3971,6 @@ L: linux-scsi@vger.kernel.org
T: git git://git.code.sf.net/p/intel-sas/isci T: git git://git.code.sf.net/p/intel-sas/isci
S: Supported S: Supported
F: drivers/scsi/isci/ F: drivers/scsi/isci/
F: firmware/isci/
INTEL IDLE DRIVER INTEL IDLE DRIVER
M: Len Brown <lenb@kernel.org> M: Len Brown <lenb@kernel.org>
@ -4036,12 +4065,6 @@ F: Documentation/networking/ixgbe.txt
F: Documentation/networking/ixgbevf.txt F: Documentation/networking/ixgbevf.txt
F: drivers/net/ethernet/intel/ F: drivers/net/ethernet/intel/
INTEL MRST PMU DRIVER
M: Len Brown <len.brown@intel.com>
L: linux-pm@vger.kernel.org
S: Supported
F: arch/x86/platform/mrst/pmu.*
INTEL PRO/WIRELESS 2100, 2200BG, 2915ABG NETWORK CONNECTION SUPPORT INTEL PRO/WIRELESS 2100, 2200BG, 2915ABG NETWORK CONNECTION SUPPORT
M: Stanislav Yakovlev <stas.yakovlev@gmail.com> M: Stanislav Yakovlev <stas.yakovlev@gmail.com>
L: linux-wireless@vger.kernel.org L: linux-wireless@vger.kernel.org
@ -4070,7 +4093,7 @@ S: Supported
W: http://linuxwimax.org W: http://linuxwimax.org
F: Documentation/wimax/README.i2400m F: Documentation/wimax/README.i2400m
F: drivers/net/wimax/i2400m/ F: drivers/net/wimax/i2400m/
F: include/linux/wimax/i2400m.h F: include/uapi/linux/wimax/i2400m.h
INTEL WIRELESS 3945ABG/BG, 4965AGN (iwlegacy) INTEL WIRELESS 3945ABG/BG, 4965AGN (iwlegacy)
M: Stanislaw Gruszka <sgruszka@redhat.com> M: Stanislaw Gruszka <sgruszka@redhat.com>
@ -4092,9 +4115,9 @@ INTEL MANAGEMENT ENGINE (mei)
M: Tomas Winkler <tomas.winkler@intel.com> M: Tomas Winkler <tomas.winkler@intel.com>
L: linux-kernel@vger.kernel.org L: linux-kernel@vger.kernel.org
S: Supported S: Supported
F: include/linux/mei.h F: include/uapi/linux/mei.h
F: drivers/misc/mei/* F: drivers/misc/mei/*
F: Documentation/mei/* F: Documentation/misc-devices/mei/*
IOC3 ETHERNET DRIVER IOC3 ETHERNET DRIVER
M: Ralf Baechle <ralf@linux-mips.org> M: Ralf Baechle <ralf@linux-mips.org>
@ -4134,6 +4157,7 @@ S: Supported
F: Documentation/IPMI.txt F: Documentation/IPMI.txt
F: drivers/char/ipmi/ F: drivers/char/ipmi/
F: include/linux/ipmi* F: include/linux/ipmi*
F: include/uapi/linux/ipmi*
IPS SCSI RAID DRIVER IPS SCSI RAID DRIVER
M: Adaptec OEM Raid Solutions <aacraid@adaptec.com> M: Adaptec OEM Raid Solutions <aacraid@adaptec.com>
@ -4151,7 +4175,7 @@ L: lvs-devel@vger.kernel.org
S: Maintained S: Maintained
F: Documentation/networking/ipvs-sysctl.txt F: Documentation/networking/ipvs-sysctl.txt
F: include/net/ip_vs.h F: include/net/ip_vs.h
F: include/linux/ip_vs.h F: include/uapi/linux/ip_vs.h
F: net/netfilter/ipvs/ F: net/netfilter/ipvs/
IPWIRELESS DRIVER IPWIRELESS DRIVER
@ -4164,8 +4188,8 @@ IPX NETWORK LAYER
M: Arnaldo Carvalho de Melo <acme@ghostprotocols.net> M: Arnaldo Carvalho de Melo <acme@ghostprotocols.net>
L: netdev@vger.kernel.org L: netdev@vger.kernel.org
S: Maintained S: Maintained
F: include/linux/ipx.h
F: include/net/ipx.h F: include/net/ipx.h
F: include/uapi/linux/ipx.h
F: net/ipx/ F: net/ipx/
IRDA SUBSYSTEM IRDA SUBSYSTEM
@ -4228,6 +4252,8 @@ F: Documentation/isdn/
F: drivers/isdn/ F: drivers/isdn/
F: include/linux/isdn.h F: include/linux/isdn.h
F: include/linux/isdn/ F: include/linux/isdn/
F: include/uapi/linux/isdn.h
F: include/uapi/linux/isdn/
ISDN SUBSYSTEM (Eicon active card driver) ISDN SUBSYSTEM (Eicon active card driver)
M: Armin Schindler <mac@melware.de> M: Armin Schindler <mac@melware.de>
@ -4268,7 +4294,7 @@ W: http://www.ivtvdriver.org
S: Maintained S: Maintained
F: Documentation/video4linux/*.ivtv F: Documentation/video4linux/*.ivtv
F: drivers/media/pci/ivtv/ F: drivers/media/pci/ivtv/
F: include/linux/ivtv* F: include/uapi/linux/ivtv*
IX2505V MEDIA DRIVER IX2505V MEDIA DRIVER
M: Malcolm Priestley <tvboxspy@gmail.com> M: Malcolm Priestley <tvboxspy@gmail.com>
@ -4306,7 +4332,7 @@ L: linux-mtd@lists.infradead.org
W: http://www.linux-mtd.infradead.org/doc/jffs2.html W: http://www.linux-mtd.infradead.org/doc/jffs2.html
S: Maintained S: Maintained
F: fs/jffs2/ F: fs/jffs2/
F: include/linux/jffs2.h F: include/uapi/linux/jffs2.h
JOURNALLING LAYER FOR BLOCK DEVICES (JBD) JOURNALLING LAYER FOR BLOCK DEVICES (JBD)
M: Andrew Morton <akpm@linux-foundation.org> M: Andrew Morton <akpm@linux-foundation.org>
@ -4389,11 +4415,13 @@ W: http://nfs.sourceforge.net/
S: Supported S: Supported
F: fs/nfsd/ F: fs/nfsd/
F: include/linux/nfsd/ F: include/linux/nfsd/
F: include/uapi/linux/nfsd/
F: fs/lockd/ F: fs/lockd/
F: fs/nfs_common/ F: fs/nfs_common/
F: net/sunrpc/ F: net/sunrpc/
F: include/linux/lockd/ F: include/linux/lockd/
F: include/linux/sunrpc/ F: include/linux/sunrpc/
F: include/uapi/linux/sunrpc/
KERNEL VIRTUAL MACHINE (KVM) KERNEL VIRTUAL MACHINE (KVM)
M: Marcelo Tosatti <mtosatti@redhat.com> M: Marcelo Tosatti <mtosatti@redhat.com>
@ -4405,6 +4433,7 @@ F: Documentation/*/kvm.txt
F: arch/*/kvm/ F: arch/*/kvm/
F: arch/*/include/asm/kvm* F: arch/*/include/asm/kvm*
F: include/linux/kvm* F: include/linux/kvm*
F: include/uapi/linux/kvm*
F: virt/kvm/ F: virt/kvm/
KERNEL VIRTUAL MACHINE (KVM) FOR AMD-V KERNEL VIRTUAL MACHINE (KVM) FOR AMD-V
@ -4451,6 +4480,7 @@ W: http://kernel.org/pub/linux/utils/kernel/kexec/
L: kexec@lists.infradead.org L: kexec@lists.infradead.org
S: Maintained S: Maintained
F: include/linux/kexec.h F: include/linux/kexec.h
F: include/uapi/linux/kexec.h
F: kernel/kexec.c F: kernel/kexec.c
KEYS/KEYRINGS: KEYS/KEYRINGS:
@ -4692,6 +4722,7 @@ LLC (802.2)
M: Arnaldo Carvalho de Melo <acme@ghostprotocols.net> M: Arnaldo Carvalho de Melo <acme@ghostprotocols.net>
S: Maintained S: Maintained
F: include/linux/llc.h F: include/linux/llc.h
F: include/uapi/linux/llc.h
F: include/net/llc* F: include/net/llc*
F: net/llc/ F: net/llc/
@ -4912,7 +4943,7 @@ MATROX FRAMEBUFFER DRIVER
L: linux-fbdev@vger.kernel.org L: linux-fbdev@vger.kernel.org
S: Orphan S: Orphan
F: drivers/video/matrox/matroxfb_* F: drivers/video/matrox/matroxfb_*
F: include/linux/matroxfb.h F: include/uapi/linux/matroxfb.h
MAX16065 HARDWARE MONITOR DRIVER MAX16065 HARDWARE MONITOR DRIVER
M: Guenter Roeck <linux@roeck-us.net> M: Guenter Roeck <linux@roeck-us.net>
@ -4994,7 +5025,7 @@ T: git git://git.infradead.org/mtd-2.6.git
S: Maintained S: Maintained
F: drivers/mtd/ F: drivers/mtd/
F: include/linux/mtd/ F: include/linux/mtd/
F: include/mtd/ F: include/uapi/mtd/
MICROBLAZE ARCHITECTURE MICROBLAZE ARCHITECTURE
M: Michal Simek <monstr@monstr.eu> M: Michal Simek <monstr@monstr.eu>
@ -5032,12 +5063,6 @@ F: Documentation/video4linux/meye.txt
F: drivers/media/pci/meye/ F: drivers/media/pci/meye/
F: include/uapi/linux/meye.h F: include/uapi/linux/meye.h
MOTOROLA IMX MMC/SD HOST CONTROLLER INTERFACE DRIVER
M: Pavel Pisa <ppisa@pikron.com>
L: linux-arm-kernel@lists.infradead.org (moderated for non-subscribers)
S: Maintained
F: drivers/mmc/host/imxmmc.*
MOXA SMARTIO/INDUSTIO/INTELLIO SERIAL CARD MOXA SMARTIO/INDUSTIO/INTELLIO SERIAL CARD
M: Jiri Slaby <jirislaby@gmail.com> M: Jiri Slaby <jirislaby@gmail.com>
S: Maintained S: Maintained
@ -5076,6 +5101,7 @@ T: git git://git.kernel.org/pub/scm/linux/kernel/git/cjb/mmc.git
S: Maintained S: Maintained
F: drivers/mmc/ F: drivers/mmc/
F: include/linux/mmc/ F: include/linux/mmc/
F: include/uapi/linux/mmc/
MULTIMEDIA CARD (MMC) ETC. OVER SPI MULTIMEDIA CARD (MMC) ETC. OVER SPI
S: Orphan S: Orphan
@ -5176,6 +5202,8 @@ S: Supported
F: include/linux/netfilter* F: include/linux/netfilter*
F: include/linux/netfilter/ F: include/linux/netfilter/
F: include/net/netfilter/ F: include/net/netfilter/
F: include/uapi/linux/netfilter*
F: include/uapi/linux/netfilter/
F: net/*/netfilter.c F: net/*/netfilter.c
F: net/*/netfilter/ F: net/*/netfilter/
F: net/netfilter/ F: net/netfilter/
@ -5194,8 +5222,8 @@ M: Ralf Baechle <ralf@linux-mips.org>
L: linux-hams@vger.kernel.org L: linux-hams@vger.kernel.org
W: http://www.linux-ax25.org/ W: http://www.linux-ax25.org/
S: Maintained S: Maintained
F: include/linux/netrom.h
F: include/net/netrom.h F: include/net/netrom.h
F: include/uapi/linux/netrom.h
F: net/netrom/ F: net/netrom/
NETWORK BLOCK DEVICE (NBD) NETWORK BLOCK DEVICE (NBD)
@ -5204,6 +5232,7 @@ S: Maintained
F: Documentation/blockdev/nbd.txt F: Documentation/blockdev/nbd.txt
F: drivers/block/nbd.c F: drivers/block/nbd.c
F: include/linux/nbd.h F: include/linux/nbd.h
F: include/uapi/linux/nbd.h
NETWORK DROP MONITOR NETWORK DROP MONITOR
M: Neil Horman <nhorman@tuxdriver.com> M: Neil Horman <nhorman@tuxdriver.com>
@ -5225,6 +5254,9 @@ F: include/net/
F: include/linux/in.h F: include/linux/in.h
F: include/linux/net.h F: include/linux/net.h
F: include/linux/netdevice.h F: include/linux/netdevice.h
F: include/uapi/linux/in.h
F: include/uapi/linux/net.h
F: include/uapi/linux/netdevice.h
NETWORKING [IPv4/IPv6] NETWORKING [IPv4/IPv6]
M: "David S. Miller" <davem@davemloft.net> M: "David S. Miller" <davem@davemloft.net>
@ -5270,6 +5302,7 @@ F: net/rfkill/
F: net/wireless/ F: net/wireless/
F: include/net/ieee80211* F: include/net/ieee80211*
F: include/linux/wireless.h F: include/linux/wireless.h
F: include/uapi/linux/wireless.h
F: include/net/iw_handler.h F: include/net/iw_handler.h
F: drivers/net/wireless/ F: drivers/net/wireless/
@ -5289,6 +5322,8 @@ F: include/linux/fcdevice.h
F: include/linux/fddidevice.h F: include/linux/fddidevice.h
F: include/linux/hippidevice.h F: include/linux/hippidevice.h
F: include/linux/inetdevice.h F: include/linux/inetdevice.h
F: include/uapi/linux/if_*
F: include/uapi/linux/netdevice.h
NETXEN (1/10) GbE SUPPORT NETXEN (1/10) GbE SUPPORT
M: Sony Chacko <sony.chacko@qlogic.com> M: Sony Chacko <sony.chacko@qlogic.com>
@ -5306,8 +5341,8 @@ L: linux-wireless@vger.kernel.org
L: linux-nfc@lists.01.org (moderated for non-subscribers) L: linux-nfc@lists.01.org (moderated for non-subscribers)
S: Maintained S: Maintained
F: net/nfc/ F: net/nfc/
F: include/linux/nfc.h
F: include/net/nfc/ F: include/net/nfc/
F: include/uapi/linux/nfc.h
F: drivers/nfc/ F: drivers/nfc/
F: include/linux/platform_data/pn544.h F: include/linux/platform_data/pn544.h
@ -5324,6 +5359,8 @@ F: net/sunrpc/
F: include/linux/lockd/ F: include/linux/lockd/
F: include/linux/nfs* F: include/linux/nfs*
F: include/linux/sunrpc/ F: include/linux/sunrpc/
F: include/uapi/linux/nfs*
F: include/uapi/linux/sunrpc/
NI5010 NETWORK DRIVER NI5010 NETWORK DRIVER
M: Jan-Pascal van Best <janpascal@vanbest.org> M: Jan-Pascal van Best <janpascal@vanbest.org>
@ -5513,6 +5550,7 @@ M: Harald Welte <laforge@gnumonks.org>
S: Maintained S: Maintained
F: drivers/char/pcmcia/cm4000_cs.c F: drivers/char/pcmcia/cm4000_cs.c
F: include/linux/cm4000_cs.h F: include/linux/cm4000_cs.h
F: include/uapi/linux/cm4000_cs.h
OMNIKEY CARDMAN 4040 DRIVER OMNIKEY CARDMAN 4040 DRIVER
M: Harald Welte <laforge@gnumonks.org> M: Harald Welte <laforge@gnumonks.org>
@ -5671,7 +5709,7 @@ S: Orphan
F: drivers/parport/ F: drivers/parport/
F: include/linux/parport*.h F: include/linux/parport*.h
F: drivers/char/ppdev.c F: drivers/char/ppdev.c
F: include/linux/ppdev.h F: include/uapi/linux/ppdev.h
PARAVIRT_OPS INTERFACE PARAVIRT_OPS INTERFACE
M: Jeremy Fitzhardinge <jeremy@goop.org> M: Jeremy Fitzhardinge <jeremy@goop.org>
@ -5812,11 +5850,11 @@ T: git git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip.git perf/core
S: Supported S: Supported
F: kernel/events/* F: kernel/events/*
F: include/linux/perf_event.h F: include/linux/perf_event.h
F: include/uapi/linux/perf_event.h
F: arch/*/kernel/perf_event*.c F: arch/*/kernel/perf_event*.c
F: arch/*/kernel/*/perf_event*.c F: arch/*/kernel/*/perf_event*.c
F: arch/*/kernel/*/*/perf_event*.c F: arch/*/kernel/*/*/perf_event*.c
F: arch/*/include/asm/perf_event.h F: arch/*/include/asm/perf_event.h
F: arch/*/lib/perf_event*.c
F: arch/*/kernel/perf_callchain.c F: arch/*/kernel/perf_callchain.c
F: tools/perf/ F: tools/perf/
@ -5825,6 +5863,7 @@ M: Christoph Hellwig <hch@infradead.org>
L: linux-abi-devel@lists.sourceforge.net L: linux-abi-devel@lists.sourceforge.net
S: Maintained S: Maintained
F: include/linux/personality.h F: include/linux/personality.h
F: include/uapi/linux/personality.h
PHONET PROTOCOL PHONET PROTOCOL
M: Remi Denis-Courmont <courmisch@gmail.com> M: Remi Denis-Courmont <courmisch@gmail.com>
@ -5832,6 +5871,7 @@ S: Supported
F: Documentation/networking/phonet.txt F: Documentation/networking/phonet.txt
F: include/linux/phonet.h F: include/linux/phonet.h
F: include/net/phonet/ F: include/net/phonet/
F: include/uapi/linux/phonet.h
F: net/phonet/ F: net/phonet/
PHRAM MTD DRIVER PHRAM MTD DRIVER
@ -5880,6 +5920,7 @@ M: Jiri Kosina <jkosina@suse.cz>
S: Maintained S: Maintained
F: drivers/block/pktcdvd.c F: drivers/block/pktcdvd.c
F: include/linux/pktcdvd.h F: include/linux/pktcdvd.h
F: include/uapi/linux/pktcdvd.h
PKUNITY SOC DRIVERS PKUNITY SOC DRIVERS
M: Guan Xuetao <gxt@mprc.pku.edu.cn> M: Guan Xuetao <gxt@mprc.pku.edu.cn>
@ -5954,7 +5995,7 @@ PPP OVER ATM (RFC 2364)
M: Mitchell Blank Jr <mitch@sfgoth.com> M: Mitchell Blank Jr <mitch@sfgoth.com>
S: Maintained S: Maintained
F: net/atm/pppoatm.c F: net/atm/pppoatm.c
F: include/linux/atmppp.h F: include/uapi/linux/atmppp.h
PPP OVER ETHERNET PPP OVER ETHERNET
M: Michal Ostrowski <mostrows@earthlink.net> M: Michal Ostrowski <mostrows@earthlink.net>
@ -5967,6 +6008,7 @@ M: James Chapman <jchapman@katalix.com>
S: Maintained S: Maintained
F: net/l2tp/l2tp_ppp.c F: net/l2tp/l2tp_ppp.c
F: include/linux/if_pppol2tp.h F: include/linux/if_pppol2tp.h
F: include/uapi/linux/if_pppol2tp.h
PPS SUPPORT PPS SUPPORT
M: Rodolfo Giometti <giometti@enneenne.com> M: Rodolfo Giometti <giometti@enneenne.com>
@ -6064,6 +6106,7 @@ F: include/asm-generic/syscall.h
F: include/linux/ptrace.h F: include/linux/ptrace.h
F: include/linux/regset.h F: include/linux/regset.h
F: include/linux/tracehook.h F: include/linux/tracehook.h
F: include/uapi/linux/ptrace.h
F: kernel/ptrace.c F: kernel/ptrace.c
PVRUSB2 VIDEO4LINUX DRIVER PVRUSB2 VIDEO4LINUX DRIVER
@ -6092,7 +6135,6 @@ T: git git://gitorious.org/linux-pwm/linux-pwm.git
F: Documentation/pwm.txt F: Documentation/pwm.txt
F: Documentation/devicetree/bindings/pwm/ F: Documentation/devicetree/bindings/pwm/
F: include/linux/pwm.h F: include/linux/pwm.h
F: include/linux/of_pwm.h
F: drivers/pwm/ F: drivers/pwm/
F: drivers/video/backlight/pwm_bl.c F: drivers/video/backlight/pwm_bl.c
F: include/linux/pwm_backlight.h F: include/linux/pwm_backlight.h
@ -6188,8 +6230,8 @@ M: Anders Larsen <al@alarsen.net>
W: http://www.alarsen.net/linux/qnx4fs/ W: http://www.alarsen.net/linux/qnx4fs/
S: Maintained S: Maintained
F: fs/qnx4/ F: fs/qnx4/
F: include/linux/qnx4_fs.h F: include/uapi/linux/qnx4_fs.h
F: include/linux/qnxtypes.h F: include/uapi/linux/qnxtypes.h
QT1010 MEDIA DRIVER QT1010 MEDIA DRIVER
M: Antti Palosaari <crope@iki.fi> M: Antti Palosaari <crope@iki.fi>
@ -6223,7 +6265,7 @@ M: Benjamin Herrenschmidt <benh@kernel.crashing.org>
L: linux-fbdev@vger.kernel.org L: linux-fbdev@vger.kernel.org
S: Maintained S: Maintained
F: drivers/video/aty/radeon* F: drivers/video/aty/radeon*
F: include/linux/radeonfb.h F: include/uapi/linux/radeonfb.h
RADIOSHARK RADIO DRIVER RADIOSHARK RADIO DRIVER
M: Hans de Goede <hdegoede@redhat.com> M: Hans de Goede <hdegoede@redhat.com>
@ -6324,6 +6366,7 @@ S: Maintained
F: Documentation/rtc.txt F: Documentation/rtc.txt
F: drivers/rtc/ F: drivers/rtc/
F: include/linux/rtc.h F: include/linux/rtc.h
F: include/uapi/linux/rtc.h
REISERFS FILE SYSTEM REISERFS FILE SYSTEM
L: reiserfs-devel@vger.kernel.org L: reiserfs-devel@vger.kernel.org
@ -6378,8 +6421,8 @@ M: Ralf Baechle <ralf@linux-mips.org>
L: linux-hams@vger.kernel.org L: linux-hams@vger.kernel.org
W: http://www.linux-ax25.org/ W: http://www.linux-ax25.org/
S: Maintained S: Maintained
F: include/linux/rose.h
F: include/net/rose.h F: include/net/rose.h
F: include/uapi/linux/rose.h
F: net/rose/ F: net/rose/
RTL2830 MEDIA DRIVER RTL2830 MEDIA DRIVER
@ -6556,6 +6599,8 @@ S: Supported
F: include/linux/clocksource.h F: include/linux/clocksource.h
F: include/linux/time.h F: include/linux/time.h
F: include/linux/timex.h F: include/linux/timex.h
F: include/uapi/linux/time.h
F: include/uapi/linux/timex.h
F: kernel/time/clocksource.c F: kernel/time/clocksource.c
F: kernel/time/time*.c F: kernel/time/time*.c
F: kernel/time/ntp.c F: kernel/time/ntp.c
@ -6580,6 +6625,7 @@ T: git git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip.git sched/core
S: Maintained S: Maintained
F: kernel/sched/ F: kernel/sched/
F: include/linux/sched.h F: include/linux/sched.h
F: include/uapi/linux/sched.h
SCORE ARCHITECTURE SCORE ARCHITECTURE
M: Chen Liqin <liqin.chen@sunplusct.com> M: Chen Liqin <liqin.chen@sunplusct.com>
@ -6733,7 +6779,7 @@ SENSABLE PHANTOM
M: Jiri Slaby <jirislaby@gmail.com> M: Jiri Slaby <jirislaby@gmail.com>
S: Maintained S: Maintained
F: drivers/misc/phantom.c F: drivers/misc/phantom.c
F: include/linux/phantom.h F: include/uapi/linux/phantom.h
SERIAL ATA (SATA) SUBSYSTEM SERIAL ATA (SATA) SUBSYSTEM
M: Jeff Garzik <jgarzik@pobox.com> M: Jeff Garzik <jgarzik@pobox.com>
@ -6991,6 +7037,7 @@ L: linux-raid@vger.kernel.org
S: Supported S: Supported
F: drivers/md/ F: drivers/md/
F: include/linux/raid/ F: include/linux/raid/
F: include/uapi/linux/raid/
SONIC NETWORK DRIVER SONIC NETWORK DRIVER
M: Thomas Bogendoerfer <tsbogend@alpha.franken.de> M: Thomas Bogendoerfer <tsbogend@alpha.franken.de>
@ -7031,6 +7078,7 @@ T: git git://git.alsa-project.org/alsa-kernel.git
S: Maintained S: Maintained
F: Documentation/sound/ F: Documentation/sound/
F: include/sound/ F: include/sound/
F: include/uapi/sound/
F: sound/ F: sound/
SOUND - SOC LAYER / DYNAMIC AUDIO POWER MANAGEMENT (ASoC) SOUND - SOC LAYER / DYNAMIC AUDIO POWER MANAGEMENT (ASoC)
@ -7131,6 +7179,7 @@ S: Maintained
F: Documentation/spi/ F: Documentation/spi/
F: drivers/spi/ F: drivers/spi/
F: include/linux/spi/ F: include/linux/spi/
F: include/uapi/linux/spi/
SPIDERNET NETWORK DRIVER for CELL SPIDERNET NETWORK DRIVER for CELL
M: Ishizaki Kou <kou.ishizaki@toshiba.co.jp> M: Ishizaki Kou <kou.ishizaki@toshiba.co.jp>
@ -7267,7 +7316,7 @@ F: drivers/staging/rtl8712/
STAGING - SILICON MOTION SM7XX FRAME BUFFER DRIVER STAGING - SILICON MOTION SM7XX FRAME BUFFER DRIVER
M: Teddy Wang <teddy.wang@siliconmotion.com.cn> M: Teddy Wang <teddy.wang@siliconmotion.com.cn>
S: Odd Fixes S: Odd Fixes
F: drivers/staging/sm7xx/ F: drivers/staging/sm7xxfb/
STAGING - SOFTLOGIC 6x10 MPEG CODEC STAGING - SOFTLOGIC 6x10 MPEG CODEC
M: Ben Collins <bcollins@bluecherry.net> M: Ben Collins <bcollins@bluecherry.net>
@ -7393,8 +7442,8 @@ TC CLASSIFIER
M: Jamal Hadi Salim <jhs@mojatatu.com> M: Jamal Hadi Salim <jhs@mojatatu.com>
L: netdev@vger.kernel.org L: netdev@vger.kernel.org
S: Maintained S: Maintained
F: include/linux/pkt_cls.h
F: include/net/pkt_cls.h F: include/net/pkt_cls.h
F: include/uapi/linux/pkt_cls.h
F: net/sched/ F: net/sched/
TCP LOW PRIORITY MODULE TCP LOW PRIORITY MODULE
@ -7486,6 +7535,7 @@ L: netdev@vger.kernel.org
S: Supported S: Supported
F: drivers/net/team/ F: drivers/net/team/
F: include/linux/if_team.h F: include/linux/if_team.h
F: include/uapi/linux/if_team.h
TECHNOTREND USB IR RECEIVER TECHNOTREND USB IR RECEIVER
M: Sean Young <sean@mess.org> M: Sean Young <sean@mess.org>
@ -7584,7 +7634,7 @@ L: netdev@vger.kernel.org (core kernel code)
L: tipc-discussion@lists.sourceforge.net (user apps, general discussion) L: tipc-discussion@lists.sourceforge.net (user apps, general discussion)
W: http://tipc.sourceforge.net/ W: http://tipc.sourceforge.net/
S: Maintained S: Maintained
F: include/linux/tipc*.h F: include/uapi/linux/tipc*.h
F: net/tipc/ F: net/tipc/
TILE ARCHITECTURE TILE ARCHITECTURE
@ -7634,6 +7684,7 @@ W: http://www.buzzard.org.uk/toshiba/
S: Maintained S: Maintained
F: drivers/char/toshiba.c F: drivers/char/toshiba.c
F: include/linux/toshiba.h F: include/linux/toshiba.h
F: include/uapi/linux/toshiba.h
TMIO MMC DRIVER TMIO MMC DRIVER
M: Guennadi Liakhovetski <g.liakhovetski@gmx.de> M: Guennadi Liakhovetski <g.liakhovetski@gmx.de>
@ -7701,6 +7752,9 @@ F: drivers/tty/serial/serial_core.c
F: include/linux/serial_core.h F: include/linux/serial_core.h
F: include/linux/serial.h F: include/linux/serial.h
F: include/linux/tty.h F: include/linux/tty.h
F: include/uapi/linux/serial_core.h
F: include/uapi/linux/serial.h
F: include/uapi/linux/tty.h
TUA9001 MEDIA DRIVER TUA9001 MEDIA DRIVER
M: Antti Palosaari <crope@iki.fi> M: Antti Palosaari <crope@iki.fi>
@ -7780,7 +7834,7 @@ M: David Herrmann <dh.herrmann@googlemail.com>
L: linux-input@vger.kernel.org L: linux-input@vger.kernel.org
S: Maintained S: Maintained
F: drivers/hid/uhid.c F: drivers/hid/uhid.c
F: include/linux/uhid.h F: include/uapi/linux/uhid.h
ULTRA-WIDEBAND (UWB) SUBSYSTEM: ULTRA-WIDEBAND (UWB) SUBSYSTEM:
L: linux-usb@vger.kernel.org L: linux-usb@vger.kernel.org
@ -7809,6 +7863,7 @@ S: Maintained
F: Documentation/cdrom/ F: Documentation/cdrom/
F: drivers/cdrom/cdrom.c F: drivers/cdrom/cdrom.c
F: include/linux/cdrom.h F: include/linux/cdrom.h
F: include/uapi/linux/cdrom.h
UNIVERSAL FLASH STORAGE HOST CONTROLLER DRIVER UNIVERSAL FLASH STORAGE HOST CONTROLLER DRIVER
M: Vinayak Holikatti <vinholikatti@gmail.com> M: Vinayak Holikatti <vinholikatti@gmail.com>
@ -7826,7 +7881,7 @@ T: git git://git.infradead.org/ubi-2.6.git
S: Maintained S: Maintained
F: drivers/mtd/ubi/ F: drivers/mtd/ubi/
F: include/linux/mtd/ubi.h F: include/linux/mtd/ubi.h
F: include/mtd/ubi-user.h F: include/uapi/mtd/ubi-user.h
UNSORTED BLOCK IMAGES (UBI) Fastmap UNSORTED BLOCK IMAGES (UBI) Fastmap
M: Richard Weinberger <richard@nod.at> M: Richard Weinberger <richard@nod.at>
@ -7860,7 +7915,7 @@ M: Oliver Neukum <oliver@neukum.org>
L: linux-usb@vger.kernel.org L: linux-usb@vger.kernel.org
S: Maintained S: Maintained
F: drivers/net/usb/cdc_*.c F: drivers/net/usb/cdc_*.c
F: include/linux/usb/cdc.h F: include/uapi/linux/usb/cdc.h
USB CYPRESS C67X00 DRIVER USB CYPRESS C67X00 DRIVER
M: Peter Korsgaard <jacmet@sunsite.dk> M: Peter Korsgaard <jacmet@sunsite.dk>
@ -8181,6 +8236,7 @@ S: Maintained
F: Documentation/vfio.txt F: Documentation/vfio.txt
F: drivers/vfio/ F: drivers/vfio/
F: include/linux/vfio.h F: include/linux/vfio.h
F: include/uapi/linux/vfio.h
VIDEOBUF2 FRAMEWORK VIDEOBUF2 FRAMEWORK
M: Pawel Osciak <pawel@osciak.com> M: Pawel Osciak <pawel@osciak.com>
@ -8197,6 +8253,7 @@ L: virtualization@lists.linux-foundation.org
S: Maintained S: Maintained
F: drivers/char/virtio_console.c F: drivers/char/virtio_console.c
F: include/linux/virtio_console.h F: include/linux/virtio_console.h
F: include/uapi/linux/virtio_console.h
VIRTIO CORE, NET AND BLOCK DRIVERS VIRTIO CORE, NET AND BLOCK DRIVERS
M: Rusty Russell <rusty@rustcorp.com.au> M: Rusty Russell <rusty@rustcorp.com.au>
@ -8215,7 +8272,7 @@ L: virtualization@lists.linux-foundation.org
L: netdev@vger.kernel.org L: netdev@vger.kernel.org
S: Maintained S: Maintained
F: drivers/vhost/ F: drivers/vhost/
F: include/linux/vhost.h F: include/uapi/linux/vhost.h
VIA RHINE NETWORK DRIVER VIA RHINE NETWORK DRIVER
M: Roger Luethi <rl@hellgate.ch> M: Roger Luethi <rl@hellgate.ch>
@ -8355,6 +8412,7 @@ S: Maintained
F: Documentation/watchdog/ F: Documentation/watchdog/
F: drivers/watchdog/ F: drivers/watchdog/
F: include/linux/watchdog.h F: include/linux/watchdog.h
F: include/uapi/linux/watchdog.h
WD7000 SCSI DRIVER WD7000 SCSI DRIVER
M: Miroslav Zagorac <zaga@fly.cc.fer.hr> M: Miroslav Zagorac <zaga@fly.cc.fer.hr>
@ -8380,9 +8438,9 @@ L: wimax@linuxwimax.org
S: Supported S: Supported
W: http://linuxwimax.org W: http://linuxwimax.org
F: Documentation/wimax/README.wimax F: Documentation/wimax/README.wimax
F: include/linux/wimax.h
F: include/linux/wimax/debug.h F: include/linux/wimax/debug.h
F: include/net/wimax.h F: include/net/wimax.h
F: include/uapi/linux/wimax.h
F: net/wimax/ F: net/wimax/
WISTRON LAPTOP BUTTON DRIVER WISTRON LAPTOP BUTTON DRIVER
@ -8500,6 +8558,7 @@ F: drivers/*/xen-*front.c
F: drivers/xen/ F: drivers/xen/
F: arch/x86/include/asm/xen/ F: arch/x86/include/asm/xen/
F: include/xen/ F: include/xen/
F: include/uapi/xen/
XEN HYPERVISOR ARM XEN HYPERVISOR ARM
M: Stefano Stabellini <stefano.stabellini@eu.citrix.com> M: Stefano Stabellini <stefano.stabellini@eu.citrix.com>

View File

@ -1,7 +1,7 @@
VERSION = 3 VERSION = 3
PATCHLEVEL = 8 PATCHLEVEL = 8
SUBLEVEL = 0 SUBLEVEL = 0
EXTRAVERSION = -rc2 EXTRAVERSION = -rc3
NAME = Terrified Chipmunk NAME = Terrified Chipmunk
# *DOCUMENTATION* # *DOCUMENTATION*

View File

@ -9,8 +9,8 @@
#ifndef _ASM_AXP_PARPORT_H #ifndef _ASM_AXP_PARPORT_H
#define _ASM_AXP_PARPORT_H 1 #define _ASM_AXP_PARPORT_H 1
static int __devinit parport_pc_find_isa_ports (int autoirq, int autodma); static int parport_pc_find_isa_ports (int autoirq, int autodma);
static int __devinit parport_pc_find_nonpci_ports (int autoirq, int autodma) static int parport_pc_find_nonpci_ports (int autoirq, int autodma)
{ {
return parport_pc_find_isa_ports (autoirq, autodma); return parport_pc_find_isa_ports (autoirq, autodma);
} }

View File

@ -59,13 +59,13 @@ struct pci_controller *pci_isa_hose;
* Quirks. * Quirks.
*/ */
static void __devinit quirk_isa_bridge(struct pci_dev *dev) static void quirk_isa_bridge(struct pci_dev *dev)
{ {
dev->class = PCI_CLASS_BRIDGE_ISA << 8; dev->class = PCI_CLASS_BRIDGE_ISA << 8;
} }
DECLARE_PCI_FIXUP_HEADER(PCI_VENDOR_ID_INTEL, PCI_DEVICE_ID_INTEL_82378, quirk_isa_bridge); DECLARE_PCI_FIXUP_HEADER(PCI_VENDOR_ID_INTEL, PCI_DEVICE_ID_INTEL_82378, quirk_isa_bridge);
static void __devinit quirk_cypress(struct pci_dev *dev) static void quirk_cypress(struct pci_dev *dev)
{ {
/* The Notorious Cy82C693 chip. */ /* The Notorious Cy82C693 chip. */
@ -104,7 +104,7 @@ static void __devinit quirk_cypress(struct pci_dev *dev)
DECLARE_PCI_FIXUP_HEADER(PCI_VENDOR_ID_CONTAQ, PCI_DEVICE_ID_CONTAQ_82C693, quirk_cypress); DECLARE_PCI_FIXUP_HEADER(PCI_VENDOR_ID_CONTAQ, PCI_DEVICE_ID_CONTAQ_82C693, quirk_cypress);
/* Called for each device after PCI setup is done. */ /* Called for each device after PCI setup is done. */
static void __devinit pcibios_fixup_final(struct pci_dev *dev) static void pcibios_fixup_final(struct pci_dev *dev)
{ {
unsigned int class = dev->class >> 8; unsigned int class = dev->class >> 8;
@ -198,8 +198,7 @@ subsys_initcall(pcibios_init);
#ifdef ALPHA_RESTORE_SRM_SETUP #ifdef ALPHA_RESTORE_SRM_SETUP
static struct pdev_srm_saved_conf *srm_saved_configs; static struct pdev_srm_saved_conf *srm_saved_configs;
void __devinit void pdev_save_srm_config(struct pci_dev *dev)
pdev_save_srm_config(struct pci_dev *dev)
{ {
struct pdev_srm_saved_conf *tmp; struct pdev_srm_saved_conf *tmp;
static int printed = 0; static int printed = 0;
@ -241,8 +240,7 @@ pci_restore_srm_config(void)
} }
#endif #endif
void __devinit void pcibios_fixup_bus(struct pci_bus *bus)
pcibios_fixup_bus(struct pci_bus *bus)
{ {
struct pci_dev *dev = bus->self; struct pci_dev *dev = bus->self;

View File

@ -68,7 +68,7 @@ enum ipi_message_type {
}; };
/* Set to a secondary's cpuid when it comes online. */ /* Set to a secondary's cpuid when it comes online. */
static int smp_secondary_alive __devinitdata = 0; static int smp_secondary_alive = 0;
int smp_num_probed; /* Internal processor count */ int smp_num_probed; /* Internal processor count */
int smp_num_cpus = 1; /* Number that came online. */ int smp_num_cpus = 1; /* Number that came online. */
@ -172,7 +172,7 @@ smp_callin(void)
} }
/* Wait until hwrpb->txrdy is clear for cpu. Return -1 on timeout. */ /* Wait until hwrpb->txrdy is clear for cpu. Return -1 on timeout. */
static int __devinit static int
wait_for_txrdy (unsigned long cpumask) wait_for_txrdy (unsigned long cpumask)
{ {
unsigned long timeout; unsigned long timeout;
@ -468,7 +468,7 @@ smp_prepare_cpus(unsigned int max_cpus)
smp_num_cpus = smp_num_probed; smp_num_cpus = smp_num_probed;
} }
void __devinit void
smp_prepare_boot_cpu(void) smp_prepare_boot_cpu(void)
{ {
} }

View File

@ -303,7 +303,7 @@ titan_late_init(void)
} }
static int __devinit static int
titan_map_irq(const struct pci_dev *dev, u8 slot, u8 pin) titan_map_irq(const struct pci_dev *dev, u8 slot, u8 pin)
{ {
u8 intline; u8 intline;

View File

@ -371,7 +371,6 @@ config ARCH_CNS3XXX
config ARCH_CLPS711X config ARCH_CLPS711X
bool "Cirrus Logic CLPS711x/EP721x/EP731x-based" bool "Cirrus Logic CLPS711x/EP721x/EP731x-based"
select ARCH_REQUIRE_GPIOLIB select ARCH_REQUIRE_GPIOLIB
select ARCH_USES_GETTIMEOFFSET
select AUTO_ZRELADDR select AUTO_ZRELADDR
select CLKDEV_LOOKUP select CLKDEV_LOOKUP
select COMMON_CLK select COMMON_CLK
@ -1230,6 +1229,7 @@ config ARM_ERRATA_430973
config ARM_ERRATA_458693 config ARM_ERRATA_458693
bool "ARM errata: Processor deadlock when a false hazard is created" bool "ARM errata: Processor deadlock when a false hazard is created"
depends on CPU_V7 depends on CPU_V7
depends on !ARCH_MULTIPLATFORM
help help
This option enables the workaround for the 458693 Cortex-A8 (r2p0) This option enables the workaround for the 458693 Cortex-A8 (r2p0)
erratum. For very specific sequences of memory operations, it is erratum. For very specific sequences of memory operations, it is
@ -1243,6 +1243,7 @@ config ARM_ERRATA_458693
config ARM_ERRATA_460075 config ARM_ERRATA_460075
bool "ARM errata: Data written to the L2 cache can be overwritten with stale data" bool "ARM errata: Data written to the L2 cache can be overwritten with stale data"
depends on CPU_V7 depends on CPU_V7
depends on !ARCH_MULTIPLATFORM
help help
This option enables the workaround for the 460075 Cortex-A8 (r2p0) This option enables the workaround for the 460075 Cortex-A8 (r2p0)
erratum. Any asynchronous access to the L2 cache may encounter a erratum. Any asynchronous access to the L2 cache may encounter a
@ -1255,6 +1256,7 @@ config ARM_ERRATA_460075
config ARM_ERRATA_742230 config ARM_ERRATA_742230
bool "ARM errata: DMB operation may be faulty" bool "ARM errata: DMB operation may be faulty"
depends on CPU_V7 && SMP depends on CPU_V7 && SMP
depends on !ARCH_MULTIPLATFORM
help help
This option enables the workaround for the 742230 Cortex-A9 This option enables the workaround for the 742230 Cortex-A9
(r1p0..r2p2) erratum. Under rare circumstances, a DMB instruction (r1p0..r2p2) erratum. Under rare circumstances, a DMB instruction
@ -1267,6 +1269,7 @@ config ARM_ERRATA_742230
config ARM_ERRATA_742231 config ARM_ERRATA_742231
bool "ARM errata: Incorrect hazard handling in the SCU may lead to data corruption" bool "ARM errata: Incorrect hazard handling in the SCU may lead to data corruption"
depends on CPU_V7 && SMP depends on CPU_V7 && SMP
depends on !ARCH_MULTIPLATFORM
help help
This option enables the workaround for the 742231 Cortex-A9 This option enables the workaround for the 742231 Cortex-A9
(r2p0..r2p2) erratum. Under certain conditions, specific to the (r2p0..r2p2) erratum. Under certain conditions, specific to the
@ -1317,6 +1320,7 @@ config PL310_ERRATA_727915
config ARM_ERRATA_743622 config ARM_ERRATA_743622
bool "ARM errata: Faulty hazard checking in the Store Buffer may lead to data corruption" bool "ARM errata: Faulty hazard checking in the Store Buffer may lead to data corruption"
depends on CPU_V7 depends on CPU_V7
depends on !ARCH_MULTIPLATFORM
help help
This option enables the workaround for the 743622 Cortex-A9 This option enables the workaround for the 743622 Cortex-A9
(r2p*) erratum. Under very rare conditions, a faulty (r2p*) erratum. Under very rare conditions, a faulty
@ -1330,6 +1334,7 @@ config ARM_ERRATA_743622
config ARM_ERRATA_751472 config ARM_ERRATA_751472
bool "ARM errata: Interrupted ICIALLUIS may prevent completion of broadcasted operation" bool "ARM errata: Interrupted ICIALLUIS may prevent completion of broadcasted operation"
depends on CPU_V7 depends on CPU_V7
depends on !ARCH_MULTIPLATFORM
help help
This option enables the workaround for the 751472 Cortex-A9 (prior This option enables the workaround for the 751472 Cortex-A9 (prior
to r3p0) erratum. An interrupted ICIALLUIS operation may prevent the to r3p0) erratum. An interrupted ICIALLUIS operation may prevent the

View File

@ -50,17 +50,19 @@
ranges; ranges;
serial@d0012000 { serial@d0012000 {
compatible = "ns16550"; compatible = "snps,dw-apb-uart";
reg = <0xd0012000 0x100>; reg = <0xd0012000 0x100>;
reg-shift = <2>; reg-shift = <2>;
interrupts = <41>; interrupts = <41>;
reg-io-width = <4>;
status = "disabled"; status = "disabled";
}; };
serial@d0012100 { serial@d0012100 {
compatible = "ns16550"; compatible = "snps,dw-apb-uart";
reg = <0xd0012100 0x100>; reg = <0xd0012100 0x100>;
reg-shift = <2>; reg-shift = <2>;
interrupts = <42>; interrupts = <42>;
reg-io-width = <4>;
status = "disabled"; status = "disabled";
}; };

View File

@ -34,7 +34,14 @@
reg = <0>; reg = <0>;
clocks = <&cpuclk 0>; clocks = <&cpuclk 0>;
}; };
}
cpu@1 {
device_type = "cpu";
compatible = "marvell,sheeva-v7";
reg = <1>;
clocks = <&cpuclk 1>;
};
};
soc { soc {
pinctrl { pinctrl {

View File

@ -85,5 +85,13 @@
#interrupts-cells = <2>; #interrupts-cells = <2>;
interrupts = <24>; interrupts = <24>;
}; };
ethernet@d0034000 {
compatible = "marvell,armada-370-neta";
reg = <0xd0034000 0x2500>;
interrupts = <14>;
clocks = <&gateclk 1>;
status = "disabled";
};
}; };
}; };

View File

@ -100,5 +100,13 @@
#interrupts-cells = <2>; #interrupts-cells = <2>;
interrupts = <24>; interrupts = <24>;
}; };
ethernet@d0034000 {
compatible = "marvell,armada-370-neta";
reg = <0xd0034000 0x2500>;
interrupts = <14>;
clocks = <&gateclk 1>;
status = "disabled";
};
}; };
}; };

View File

@ -42,17 +42,19 @@
soc { soc {
serial@d0012200 { serial@d0012200 {
compatible = "ns16550"; compatible = "snps,dw-apb-uart";
reg = <0xd0012200 0x100>; reg = <0xd0012200 0x100>;
reg-shift = <2>; reg-shift = <2>;
interrupts = <43>; interrupts = <43>;
reg-io-width = <4>;
status = "disabled"; status = "disabled";
}; };
serial@d0012300 { serial@d0012300 {
compatible = "ns16550"; compatible = "snps,dw-apb-uart";
reg = <0xd0012300 0x100>; reg = <0xd0012300 0x100>;
reg-shift = <2>; reg-shift = <2>;
interrupts = <44>; interrupts = <44>;
reg-io-width = <4>;
status = "disabled"; status = "disabled";
}; };
@ -93,14 +95,6 @@
status = "disabled"; status = "disabled";
}; };
ethernet@d0034000 {
compatible = "marvell,armada-370-neta";
reg = <0xd0034000 0x2500>;
interrupts = <14>;
clocks = <&gateclk 1>;
status = "disabled";
};
xor@d0060900 { xor@d0060900 {
compatible = "marvell,orion-xor"; compatible = "marvell,orion-xor";
reg = <0xd0060900 0x100 reg = <0xd0060900 0x100

View File

@ -170,7 +170,9 @@
gpio-bank = <8>; gpio-bank = <8>;
}; };
pinctrl { pinctrl@80157000 {
// This is actually the PRCMU base address
reg = <0x80157000 0x2000>;
compatible = "stericsson,nmk_pinctrl"; compatible = "stericsson,nmk_pinctrl";
}; };

View File

@ -117,6 +117,7 @@
pinctrl: pinctrl@d0200 { pinctrl: pinctrl@d0200 {
compatible = "marvell,dove-pinctrl"; compatible = "marvell,dove-pinctrl";
reg = <0xd0200 0x10>; reg = <0xd0200 0x10>;
clocks = <&gate_clk 22>;
}; };
spi0: spi@10600 { spi0: spi@10600 {

View File

@ -32,6 +32,7 @@
cpu@0 { cpu@0 {
compatible = "arm,cortex-a15"; compatible = "arm,cortex-a15";
device_type = "cpu";
reg = <0>; reg = <0>;
clocks = <&a9pll>; clocks = <&a9pll>;
clock-names = "cpu"; clock-names = "cpu";
@ -39,6 +40,7 @@
cpu@1 { cpu@1 {
compatible = "arm,cortex-a15"; compatible = "arm,cortex-a15";
device_type = "cpu";
reg = <1>; reg = <1>;
clocks = <&a9pll>; clocks = <&a9pll>;
clock-names = "cpu"; clock-names = "cpu";
@ -46,6 +48,7 @@
cpu@2 { cpu@2 {
compatible = "arm,cortex-a15"; compatible = "arm,cortex-a15";
device_type = "cpu";
reg = <2>; reg = <2>;
clocks = <&a9pll>; clocks = <&a9pll>;
clock-names = "cpu"; clock-names = "cpu";
@ -53,6 +56,7 @@
cpu@3 { cpu@3 {
compatible = "arm,cortex-a15"; compatible = "arm,cortex-a15";
device_type = "cpu";
reg = <3>; reg = <3>;
clocks = <&a9pll>; clocks = <&a9pll>;
clock-names = "cpu"; clock-names = "cpu";

View File

@ -26,7 +26,7 @@
}; };
chosen { chosen {
bootargs = "root=/dev/ram0 rw ramdisk=8192 initrd=0x41000000,8M console=ttySAC2,115200 init=/linuxrc"; bootargs = "root=/dev/ram0 rw ramdisk=8192 initrd=0x41000000,8M console=ttySAC1,115200 init=/linuxrc";
}; };
sdhci@12530000 { sdhci@12530000 {

View File

@ -574,7 +574,7 @@
hdmi { hdmi {
compatible = "samsung,exynos5-hdmi"; compatible = "samsung,exynos5-hdmi";
reg = <0x14530000 0x100000>; reg = <0x14530000 0x70000>;
interrupts = <0 95 0>; interrupts = <0 95 0>;
}; };

View File

@ -21,7 +21,7 @@
}; };
chosen { chosen {
bootargs = "root=/dev/ram0 rw ramdisk=8192 initrd=0x81000000,8M console=ttySAC2,115200 init=/linuxrc"; bootargs = "root=/dev/ram0 rw ramdisk=8192 initrd=0x81000000,8M console=ttySAC0,115200 init=/linuxrc";
}; };
spi { spi {

View File

@ -30,33 +30,37 @@
#address-cells = <1>; #address-cells = <1>;
#size-cells = <0>; #size-cells = <0>;
cpu@0 { cpu@900 {
compatible = "arm,cortex-a9"; compatible = "arm,cortex-a9";
reg = <0>; device_type = "cpu";
reg = <0x900>;
next-level-cache = <&L2>; next-level-cache = <&L2>;
clocks = <&a9pll>; clocks = <&a9pll>;
clock-names = "cpu"; clock-names = "cpu";
}; };
cpu@1 { cpu@901 {
compatible = "arm,cortex-a9"; compatible = "arm,cortex-a9";
reg = <1>; device_type = "cpu";
reg = <0x901>;
next-level-cache = <&L2>; next-level-cache = <&L2>;
clocks = <&a9pll>; clocks = <&a9pll>;
clock-names = "cpu"; clock-names = "cpu";
}; };
cpu@2 { cpu@902 {
compatible = "arm,cortex-a9"; compatible = "arm,cortex-a9";
reg = <2>; device_type = "cpu";
reg = <0x902>;
next-level-cache = <&L2>; next-level-cache = <&L2>;
clocks = <&a9pll>; clocks = <&a9pll>;
clock-names = "cpu"; clock-names = "cpu";
}; };
cpu@3 { cpu@903 {
compatible = "arm,cortex-a9"; compatible = "arm,cortex-a9";
reg = <3>; device_type = "cpu";
reg = <0x903>;
next-level-cache = <&L2>; next-level-cache = <&L2>;
clocks = <&a9pll>; clocks = <&a9pll>;
clock-names = "cpu"; clock-names = "cpu";

View File

@ -39,17 +39,17 @@
hog_pins_a: hog@0 { hog_pins_a: hog@0 {
reg = <0>; reg = <0>;
fsl,pinmux-ids = < fsl,pinmux-ids = <
0x2013 /* MX23_PAD_SSP1_DETECT__GPIO_2_1 */ 0x0113 /* MX23_PAD_GPMI_ALE__GPIO_0_17 */
>; >;
fsl,drive-strength = <0>; fsl,drive-strength = <0>;
fsl,voltage = <1>; fsl,voltage = <1>;
fsl,pull-up = <0>; fsl,pull-up = <0>;
}; };
led_pin_gpio0_17: led_gpio0_17@0 { led_pin_gpio2_1: led_gpio2_1@0 {
reg = <0>; reg = <0>;
fsl,pinmux-ids = < fsl,pinmux-ids = <
0x0113 /* MX23_PAD_GPMI_ALE__GPIO_0_17 */ 0x2013 /* MX23_PAD_SSP1_DETECT__GPIO_2_1 */
>; >;
fsl,drive-strength = <0>; fsl,drive-strength = <0>;
fsl,voltage = <1>; fsl,voltage = <1>;
@ -110,7 +110,7 @@
leds { leds {
compatible = "gpio-leds"; compatible = "gpio-leds";
pinctrl-names = "default"; pinctrl-names = "default";
pinctrl-0 = <&led_pin_gpio0_17>; pinctrl-0 = <&led_pin_gpio2_1>;
user { user {
label = "green"; label = "green";

View File

@ -14,7 +14,7 @@
/ { / {
model = "Buglabs i.MX31 Bug 1.x"; model = "Buglabs i.MX31 Bug 1.x";
compatible = "fsl,imx31-bug", "fsl,imx31"; compatible = "buglabs,imx31-bug", "fsl,imx31";
memory { memory {
reg = <0x80000000 0x8000000>; /* 128M */ reg = <0x80000000 0x8000000>; /* 128M */

View File

@ -492,7 +492,7 @@
compatible = "fsl,imx53-flexcan", "fsl,p1010-flexcan"; compatible = "fsl,imx53-flexcan", "fsl,p1010-flexcan";
reg = <0x53fcc000 0x4000>; reg = <0x53fcc000 0x4000>;
interrupts = <83>; interrupts = <83>;
clocks = <&clks 158>, <&clks 157>; clocks = <&clks 87>, <&clks 86>;
clock-names = "ipg", "per"; clock-names = "ipg", "per";
status = "disabled"; status = "disabled";
}; };

View File

@ -39,6 +39,7 @@
#size-cells = <0>; #size-cells = <0>;
interrupts = <32>; interrupts = <32>;
clock-frequency = <100000>; clock-frequency = <100000>;
clocks = <&gate_clk 7>;
status = "disabled"; status = "disabled";
}; };
}; };

View File

@ -82,4 +82,21 @@
gpios = <&gpio1 16 1>; gpios = <&gpio1 16 1>;
}; };
}; };
regulators {
compatible = "simple-bus";
#address-cells = <1>;
#size-cells = <0>;
sata0_power: regulator@1 {
compatible = "regulator-fixed";
reg = <1>;
regulator-name = "SATA0 Power";
regulator-min-microvolt = <5000000>;
regulator-max-microvolt = <5000000>;
enable-active-high;
regulator-always-on;
regulator-boot-on;
gpio = <&gpio1 4 0>;
};
};
}; };

View File

@ -144,6 +144,7 @@
compatible = "marvell,orion-ehci"; compatible = "marvell,orion-ehci";
reg = <0x50000 0x1000>; reg = <0x50000 0x1000>;
interrupts = <19>; interrupts = <19>;
clocks = <&gate_clk 3>;
status = "okay"; status = "okay";
}; };

View File

@ -686,8 +686,7 @@ sa1111_init_one_child(struct sa1111 *sachip, struct resource *parent,
* %-EINVAL no platform data passed * %-EINVAL no platform data passed
* %0 successful. * %0 successful.
*/ */
static int __devinit static int __sa1111_probe(struct device *me, struct resource *mem, int irq)
__sa1111_probe(struct device *me, struct resource *mem, int irq)
{ {
struct sa1111_platform_data *pd = me->platform_data; struct sa1111_platform_data *pd = me->platform_data;
struct sa1111 *sachip; struct sa1111 *sachip;
@ -1011,7 +1010,7 @@ static int sa1111_resume(struct platform_device *dev)
#define sa1111_resume NULL #define sa1111_resume NULL
#endif #endif
static int __devinit sa1111_probe(struct platform_device *pdev) static int sa1111_probe(struct platform_device *pdev)
{ {
struct resource *mem; struct resource *mem;
int irq; int irq;

View File

@ -176,7 +176,7 @@ static int scoop_resume(struct platform_device *dev)
#define scoop_resume NULL #define scoop_resume NULL
#endif #endif
static int __devinit scoop_probe(struct platform_device *pdev) static int scoop_probe(struct platform_device *pdev)
{ {
struct scoop_dev *devptr; struct scoop_dev *devptr;
struct scoop_config *inf; struct scoop_config *inf;
@ -243,7 +243,7 @@ err_ioremap:
return ret; return ret;
} }
static int __devexit scoop_remove(struct platform_device *pdev) static int scoop_remove(struct platform_device *pdev)
{ {
struct scoop_dev *sdev = platform_get_drvdata(pdev); struct scoop_dev *sdev = platform_get_drvdata(pdev);
int ret; int ret;
@ -268,7 +268,7 @@ static int __devexit scoop_remove(struct platform_device *pdev)
static struct platform_driver scoop_driver = { static struct platform_driver scoop_driver = {
.probe = scoop_probe, .probe = scoop_probe,
.remove = __devexit_p(scoop_remove), .remove = scoop_remove,
.suspend = scoop_suspend, .suspend = scoop_suspend,
.resume = scoop_resume, .resume = scoop_resume,
.driver = { .driver = {

View File

@ -206,6 +206,7 @@ static void __init vic_register(void __iomem *base, unsigned int irq,
struct device_node *node) struct device_node *node)
{ {
struct vic_device *v; struct vic_device *v;
int i;
if (vic_id >= ARRAY_SIZE(vic_devices)) { if (vic_id >= ARRAY_SIZE(vic_devices)) {
printk(KERN_ERR "%s: too few VICs, increase CONFIG_ARM_VIC_NR\n", __func__); printk(KERN_ERR "%s: too few VICs, increase CONFIG_ARM_VIC_NR\n", __func__);
@ -220,6 +221,10 @@ static void __init vic_register(void __iomem *base, unsigned int irq,
vic_id++; vic_id++;
v->domain = irq_domain_add_simple(node, fls(valid_sources), irq, v->domain = irq_domain_add_simple(node, fls(valid_sources), irq,
&vic_irqdomain_ops, v); &vic_irqdomain_ops, v);
/* create an IRQ mapping for each valid IRQ */
for (i = 0; i < fls(valid_sources); i++)
if (valid_sources & (1 << i))
irq_create_mapping(v->domain, i);
} }
static void vic_ack_irq(struct irq_data *d) static void vic_ack_irq(struct irq_data *d)
@ -416,9 +421,9 @@ int __init vic_of_init(struct device_node *node, struct device_node *parent)
return -EIO; return -EIO;
/* /*
* Passing -1 as first IRQ makes the simple domain allocate descriptors * Passing 0 as first IRQ makes the simple domain allocate descriptors
*/ */
__vic_init(regs, -1, ~0, ~0, node); __vic_init(regs, 0, ~0, ~0, node);
return 0; return 0;
} }

View File

@ -33,9 +33,7 @@ CONFIG_MVNETA=y
CONFIG_MARVELL_PHY=y CONFIG_MARVELL_PHY=y
CONFIG_SERIAL_8250=y CONFIG_SERIAL_8250=y
CONFIG_SERIAL_8250_CONSOLE=y CONFIG_SERIAL_8250_CONSOLE=y
CONFIG_SERIAL_OF_PLATFORM=y CONFIG_SERIAL_8250_DW=y
CONFIG_I2C=y
CONFIG_I2C_MV64XXX=y
CONFIG_GPIOLIB=y CONFIG_GPIOLIB=y
CONFIG_GPIO_SYSFS=y CONFIG_GPIO_SYSFS=y
# CONFIG_USB_SUPPORT is not set # CONFIG_USB_SUPPORT is not set

View File

@ -78,7 +78,7 @@ void pcibios_report_status(u_int status_mask, int warn)
* Bug 3 is responsible for the sound DMA grinding to a halt. We now * Bug 3 is responsible for the sound DMA grinding to a halt. We now
* live with bug 2. * live with bug 2.
*/ */
static void __devinit pci_fixup_83c553(struct pci_dev *dev) static void pci_fixup_83c553(struct pci_dev *dev)
{ {
/* /*
* Set memory region to start at address 0, and enable IO * Set memory region to start at address 0, and enable IO
@ -130,7 +130,7 @@ static void __devinit pci_fixup_83c553(struct pci_dev *dev)
} }
DECLARE_PCI_FIXUP_HEADER(PCI_VENDOR_ID_WINBOND, PCI_DEVICE_ID_WINBOND_83C553, pci_fixup_83c553); DECLARE_PCI_FIXUP_HEADER(PCI_VENDOR_ID_WINBOND, PCI_DEVICE_ID_WINBOND_83C553, pci_fixup_83c553);
static void __devinit pci_fixup_unassign(struct pci_dev *dev) static void pci_fixup_unassign(struct pci_dev *dev)
{ {
dev->resource[0].end -= dev->resource[0].start; dev->resource[0].end -= dev->resource[0].start;
dev->resource[0].start = 0; dev->resource[0].start = 0;
@ -142,7 +142,7 @@ DECLARE_PCI_FIXUP_HEADER(PCI_VENDOR_ID_WINBOND2, PCI_DEVICE_ID_WINBOND2_89C940F,
* if it is the host bridge by marking it as such. These resources are of * 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). * no consequence to the PCI layer (they are handled elsewhere).
*/ */
static void __devinit pci_fixup_dec21285(struct pci_dev *dev) static void pci_fixup_dec21285(struct pci_dev *dev)
{ {
int i; int i;
@ -161,7 +161,7 @@ DECLARE_PCI_FIXUP_HEADER(PCI_VENDOR_ID_DEC, PCI_DEVICE_ID_DEC_21285, pci_fixup_d
/* /*
* PCI IDE controllers use non-standard I/O port decoding, respect it. * PCI IDE controllers use non-standard I/O port decoding, respect it.
*/ */
static void __devinit pci_fixup_ide_bases(struct pci_dev *dev) static void pci_fixup_ide_bases(struct pci_dev *dev)
{ {
struct resource *r; struct resource *r;
int i; int i;
@ -182,7 +182,7 @@ DECLARE_PCI_FIXUP_HEADER(PCI_ANY_ID, PCI_ANY_ID, pci_fixup_ide_bases);
/* /*
* Put the DEC21142 to sleep * Put the DEC21142 to sleep
*/ */
static void __devinit pci_fixup_dec21142(struct pci_dev *dev) static void pci_fixup_dec21142(struct pci_dev *dev)
{ {
pci_write_config_dword(dev, 0x40, 0x80000000); pci_write_config_dword(dev, 0x40, 0x80000000);
} }
@ -204,7 +204,7 @@ DECLARE_PCI_FIXUP_HEADER(PCI_VENDOR_ID_DEC, PCI_DEVICE_ID_DEC_21142, pci_fixup_d
* functional. However, The CY82C693U _does not work_ in bus * functional. However, The CY82C693U _does not work_ in bus
* master mode without locking the PCI bus solid. * master mode without locking the PCI bus solid.
*/ */
static void __devinit pci_fixup_cy82c693(struct pci_dev *dev) static void pci_fixup_cy82c693(struct pci_dev *dev)
{ {
if ((dev->class >> 8) == PCI_CLASS_STORAGE_IDE) { if ((dev->class >> 8) == PCI_CLASS_STORAGE_IDE) {
u32 base0, base1; u32 base0, base1;
@ -254,7 +254,7 @@ static void __devinit pci_fixup_cy82c693(struct pci_dev *dev)
} }
DECLARE_PCI_FIXUP_HEADER(PCI_VENDOR_ID_CONTAQ, PCI_DEVICE_ID_CONTAQ_82C693, pci_fixup_cy82c693); DECLARE_PCI_FIXUP_HEADER(PCI_VENDOR_ID_CONTAQ, PCI_DEVICE_ID_CONTAQ_82C693, pci_fixup_cy82c693);
static void __devinit pci_fixup_it8152(struct pci_dev *dev) static void pci_fixup_it8152(struct pci_dev *dev)
{ {
int i; int i;
/* fixup for ITE 8152 devices */ /* fixup for ITE 8152 devices */
@ -361,9 +361,7 @@ void pcibios_fixup_bus(struct pci_bus *bus)
printk(KERN_INFO "PCI: bus%d: Fast back to back transfers %sabled\n", printk(KERN_INFO "PCI: bus%d: Fast back to back transfers %sabled\n",
bus->number, (features & PCI_COMMAND_FAST_BACK) ? "en" : "dis"); bus->number, (features & PCI_COMMAND_FAST_BACK) ? "en" : "dis");
} }
#ifdef CONFIG_HOTPLUG
EXPORT_SYMBOL(pcibios_fixup_bus); EXPORT_SYMBOL(pcibios_fixup_bus);
#endif
/* /*
* Swizzle the device pin each time we cross a bridge. If a platform does * Swizzle the device pin each time we cross a bridge. If a platform does
@ -380,7 +378,7 @@ EXPORT_SYMBOL(pcibios_fixup_bus);
* PCI standard swizzle is implemented on plug-in cards and Cardbus based * PCI standard swizzle is implemented on plug-in cards and Cardbus based
* PCI extenders, so it can not be ignored. * PCI extenders, so it can not be ignored.
*/ */
static u8 __devinit pcibios_swizzle(struct pci_dev *dev, u8 *pin) static u8 pcibios_swizzle(struct pci_dev *dev, u8 *pin)
{ {
struct pci_sys_data *sys = dev->sysdata; struct pci_sys_data *sys = dev->sysdata;
int slot, oldpin = *pin; int slot, oldpin = *pin;

View File

@ -339,7 +339,7 @@ static struct miscdevice etb_miscdev = {
.fops = &etb_fops, .fops = &etb_fops,
}; };
static int __devinit etb_probe(struct amba_device *dev, const struct amba_id *id) static int etb_probe(struct amba_device *dev, const struct amba_id *id)
{ {
struct tracectx *t = &tracer; struct tracectx *t = &tracer;
int ret = 0; int ret = 0;
@ -531,7 +531,7 @@ static ssize_t trace_mode_store(struct kobject *kobj,
static struct kobj_attribute trace_mode_attr = static struct kobj_attribute trace_mode_attr =
__ATTR(trace_mode, 0644, trace_mode_show, trace_mode_store); __ATTR(trace_mode, 0644, trace_mode_show, trace_mode_store);
static int __devinit etm_probe(struct amba_device *dev, const struct amba_id *id) static int etm_probe(struct amba_device *dev, const struct amba_id *id)
{ {
struct tracectx *t = &tracer; struct tracectx *t = &tracer;
int ret = 0; int ret = 0;

View File

@ -132,7 +132,7 @@ static int cpu_pmu_request_irq(struct arm_pmu *cpu_pmu, irq_handler_t handler)
return 0; return 0;
} }
static void __devinit cpu_pmu_init(struct arm_pmu *cpu_pmu) static void cpu_pmu_init(struct arm_pmu *cpu_pmu)
{ {
int cpu; int cpu;
for_each_possible_cpu(cpu) { for_each_possible_cpu(cpu) {
@ -178,7 +178,7 @@ static struct notifier_block __cpuinitdata cpu_pmu_hotplug_notifier = {
/* /*
* PMU platform driver and devicetree bindings. * PMU platform driver and devicetree bindings.
*/ */
static struct of_device_id __devinitdata cpu_pmu_of_device_ids[] = { static struct of_device_id cpu_pmu_of_device_ids[] = {
{.compatible = "arm,cortex-a15-pmu", .data = armv7_a15_pmu_init}, {.compatible = "arm,cortex-a15-pmu", .data = armv7_a15_pmu_init},
{.compatible = "arm,cortex-a9-pmu", .data = armv7_a9_pmu_init}, {.compatible = "arm,cortex-a9-pmu", .data = armv7_a9_pmu_init},
{.compatible = "arm,cortex-a8-pmu", .data = armv7_a8_pmu_init}, {.compatible = "arm,cortex-a8-pmu", .data = armv7_a8_pmu_init},
@ -190,7 +190,7 @@ static struct of_device_id __devinitdata cpu_pmu_of_device_ids[] = {
{}, {},
}; };
static struct platform_device_id __devinitdata cpu_pmu_plat_device_ids[] = { static struct platform_device_id cpu_pmu_plat_device_ids[] = {
{.name = "arm-pmu"}, {.name = "arm-pmu"},
{}, {},
}; };
@ -198,7 +198,7 @@ static struct platform_device_id __devinitdata cpu_pmu_plat_device_ids[] = {
/* /*
* CPU PMU identification and probing. * CPU PMU identification and probing.
*/ */
static int __devinit probe_current_pmu(struct arm_pmu *pmu) static int probe_current_pmu(struct arm_pmu *pmu)
{ {
int cpu = get_cpu(); int cpu = get_cpu();
unsigned long cpuid = read_cpuid_id(); unsigned long cpuid = read_cpuid_id();
@ -252,7 +252,7 @@ static int __devinit probe_current_pmu(struct arm_pmu *pmu)
return ret; return ret;
} }
static int __devinit cpu_pmu_device_probe(struct platform_device *pdev) static int cpu_pmu_device_probe(struct platform_device *pdev)
{ {
const struct of_device_id *of_id; const struct of_device_id *of_id;
int (*init_fn)(struct arm_pmu *); int (*init_fn)(struct arm_pmu *);

View File

@ -653,7 +653,7 @@ static int armv6_map_event(struct perf_event *event)
&armv6_perf_cache_map, 0xFF); &armv6_perf_cache_map, 0xFF);
} }
static int __devinit armv6pmu_init(struct arm_pmu *cpu_pmu) static int armv6pmu_init(struct arm_pmu *cpu_pmu)
{ {
cpu_pmu->name = "v6"; cpu_pmu->name = "v6";
cpu_pmu->handle_irq = armv6pmu_handle_irq; cpu_pmu->handle_irq = armv6pmu_handle_irq;
@ -685,7 +685,7 @@ static int armv6mpcore_map_event(struct perf_event *event)
&armv6mpcore_perf_cache_map, 0xFF); &armv6mpcore_perf_cache_map, 0xFF);
} }
static int __devinit armv6mpcore_pmu_init(struct arm_pmu *cpu_pmu) static int armv6mpcore_pmu_init(struct arm_pmu *cpu_pmu)
{ {
cpu_pmu->name = "v6mpcore"; cpu_pmu->name = "v6mpcore";
cpu_pmu->handle_irq = armv6pmu_handle_irq; cpu_pmu->handle_irq = armv6pmu_handle_irq;

View File

@ -1226,7 +1226,7 @@ static void armv7pmu_init(struct arm_pmu *cpu_pmu)
cpu_pmu->max_period = (1LLU << 32) - 1; cpu_pmu->max_period = (1LLU << 32) - 1;
}; };
static u32 __devinit armv7_read_num_pmnc_events(void) static u32 armv7_read_num_pmnc_events(void)
{ {
u32 nb_cnt; u32 nb_cnt;
@ -1237,7 +1237,7 @@ static u32 __devinit armv7_read_num_pmnc_events(void)
return nb_cnt + 1; return nb_cnt + 1;
} }
static int __devinit armv7_a8_pmu_init(struct arm_pmu *cpu_pmu) static int armv7_a8_pmu_init(struct arm_pmu *cpu_pmu)
{ {
armv7pmu_init(cpu_pmu); armv7pmu_init(cpu_pmu);
cpu_pmu->name = "ARMv7 Cortex-A8"; cpu_pmu->name = "ARMv7 Cortex-A8";
@ -1246,7 +1246,7 @@ static int __devinit armv7_a8_pmu_init(struct arm_pmu *cpu_pmu)
return 0; return 0;
} }
static int __devinit armv7_a9_pmu_init(struct arm_pmu *cpu_pmu) static int armv7_a9_pmu_init(struct arm_pmu *cpu_pmu)
{ {
armv7pmu_init(cpu_pmu); armv7pmu_init(cpu_pmu);
cpu_pmu->name = "ARMv7 Cortex-A9"; cpu_pmu->name = "ARMv7 Cortex-A9";
@ -1255,7 +1255,7 @@ static int __devinit armv7_a9_pmu_init(struct arm_pmu *cpu_pmu)
return 0; return 0;
} }
static int __devinit armv7_a5_pmu_init(struct arm_pmu *cpu_pmu) static int armv7_a5_pmu_init(struct arm_pmu *cpu_pmu)
{ {
armv7pmu_init(cpu_pmu); armv7pmu_init(cpu_pmu);
cpu_pmu->name = "ARMv7 Cortex-A5"; cpu_pmu->name = "ARMv7 Cortex-A5";
@ -1264,7 +1264,7 @@ static int __devinit armv7_a5_pmu_init(struct arm_pmu *cpu_pmu)
return 0; return 0;
} }
static int __devinit armv7_a15_pmu_init(struct arm_pmu *cpu_pmu) static int armv7_a15_pmu_init(struct arm_pmu *cpu_pmu)
{ {
armv7pmu_init(cpu_pmu); armv7pmu_init(cpu_pmu);
cpu_pmu->name = "ARMv7 Cortex-A15"; cpu_pmu->name = "ARMv7 Cortex-A15";
@ -1274,7 +1274,7 @@ static int __devinit armv7_a15_pmu_init(struct arm_pmu *cpu_pmu)
return 0; return 0;
} }
static int __devinit armv7_a7_pmu_init(struct arm_pmu *cpu_pmu) static int armv7_a7_pmu_init(struct arm_pmu *cpu_pmu)
{ {
armv7pmu_init(cpu_pmu); armv7pmu_init(cpu_pmu);
cpu_pmu->name = "ARMv7 Cortex-A7"; cpu_pmu->name = "ARMv7 Cortex-A7";

View File

@ -440,7 +440,7 @@ static int xscale_map_event(struct perf_event *event)
&xscale_perf_cache_map, 0xFF); &xscale_perf_cache_map, 0xFF);
} }
static int __devinit xscale1pmu_init(struct arm_pmu *cpu_pmu) static int xscale1pmu_init(struct arm_pmu *cpu_pmu)
{ {
cpu_pmu->name = "xscale1"; cpu_pmu->name = "xscale1";
cpu_pmu->handle_irq = xscale1pmu_handle_irq; cpu_pmu->handle_irq = xscale1pmu_handle_irq;
@ -810,7 +810,7 @@ static inline void xscale2pmu_write_counter(struct perf_event *event, u32 val)
} }
} }
static int __devinit xscale2pmu_init(struct arm_pmu *cpu_pmu) static int xscale2pmu_init(struct arm_pmu *cpu_pmu)
{ {
cpu_pmu->name = "xscale2"; cpu_pmu->name = "xscale2";
cpu_pmu->handle_irq = xscale2pmu_handle_irq; cpu_pmu->handle_irq = xscale2pmu_handle_irq;

View File

@ -358,7 +358,7 @@ static int cpld_video_probe(struct i2c_client *client,
return 0; return 0;
} }
static int __devexit cpld_video_remove(struct i2c_client *client) static int cpld_video_remove(struct i2c_client *client)
{ {
cpld_client = NULL; cpld_client = NULL;
return 0; return 0;

View File

@ -256,7 +256,7 @@ static int cdce_probe(struct i2c_client *client,
return 0; return 0;
} }
static int __devexit cdce_remove(struct i2c_client *client) static int cdce_remove(struct i2c_client *client)
{ {
cdce_i2c_client = NULL; cdce_i2c_client = NULL;
return 0; return 0;
@ -274,7 +274,7 @@ static struct i2c_driver cdce_driver = {
.name = "cdce949", .name = "cdce949",
}, },
.probe = cdce_probe, .probe = cdce_probe,
.remove = __devexit_p(cdce_remove), .remove = cdce_remove,
.id_table = cdce_id, .id_table = cdce_id,
}; };

View File

@ -135,7 +135,7 @@ static struct pci_ops pcie_ops = {
.write = pcie_wr_conf, .write = pcie_wr_conf,
}; };
static void __devinit rc_pci_fixup(struct pci_dev *dev) static void rc_pci_fixup(struct pci_dev *dev)
{ {
/* /*
* Prevent enumeration of root complex. * Prevent enumeration of root complex.

View File

@ -74,6 +74,8 @@ config SOC_EXYNOS5440
depends on ARCH_EXYNOS5 depends on ARCH_EXYNOS5
select ARM_ARCH_TIMER select ARM_ARCH_TIMER
select AUTO_ZRELADDR select AUTO_ZRELADDR
select PINCTRL
select PINCTRL_EXYNOS5440
help help
Enable EXYNOS5440 SoC support Enable EXYNOS5440 SoC support

View File

@ -424,11 +424,18 @@ static void __init exynos5_init_clocks(int xtal)
{ {
printk(KERN_DEBUG "%s: initializing clocks\n", __func__); printk(KERN_DEBUG "%s: initializing clocks\n", __func__);
/* EXYNOS5440 can support only common clock framework */
if (soc_is_exynos5440())
return;
#ifdef CONFIG_SOC_EXYNOS5250
s3c24xx_register_baseclocks(xtal); s3c24xx_register_baseclocks(xtal);
s5p_register_clocks(xtal); s5p_register_clocks(xtal);
exynos5_register_clocks(); exynos5_register_clocks();
exynos5_setup_clocks(); exynos5_setup_clocks();
#endif
} }
#define COMBINER_ENABLE_SET 0x0 #define COMBINER_ENABLE_SET 0x0

View File

@ -135,7 +135,7 @@ static struct sys_timer highbank_timer = {
static void highbank_power_off(void) static void highbank_power_off(void)
{ {
hignbank_set_pwr_shutdown(); highbank_set_pwr_shutdown();
while (1) while (1)
cpu_do_idle(); cpu_do_idle();

View File

@ -30,7 +30,7 @@ void __ref highbank_cpu_die(unsigned int cpu)
{ {
flush_cache_all(); flush_cache_all();
highbank_set_cpu_jump(cpu, secondary_startup); highbank_set_cpu_jump(cpu, phys_to_virt(0));
highbank_set_core_pwr(); highbank_set_core_pwr();
cpu_do_idle(); cpu_do_idle();

View File

@ -32,6 +32,7 @@ static void __cpuinit highbank_secondary_init(unsigned int cpu)
static int __cpuinit highbank_boot_secondary(unsigned int cpu, struct task_struct *idle) static int __cpuinit highbank_boot_secondary(unsigned int cpu, struct task_struct *idle)
{ {
highbank_set_cpu_jump(cpu, secondary_startup);
gic_raise_softirq(cpumask_of(cpu), 0); gic_raise_softirq(cpumask_of(cpu), 0);
return 0; return 0;
} }
@ -61,19 +62,8 @@ static void __init highbank_smp_init_cpus(void)
static void __init highbank_smp_prepare_cpus(unsigned int max_cpus) static void __init highbank_smp_prepare_cpus(unsigned int max_cpus)
{ {
int i;
if (scu_base_addr) if (scu_base_addr)
scu_enable(scu_base_addr); scu_enable(scu_base_addr);
/*
* Write the address of secondary startup into the jump table
* The cores are in wfi and wait until they receive a soft interrupt
* and a non-zero value to jump to. Then the secondary CPU branches
* to this address.
*/
for (i = 1; i < max_cpus; i++)
highbank_set_cpu_jump(i, secondary_startup);
} }
struct smp_operations highbank_smp_ops __initdata = { struct smp_operations highbank_smp_ops __initdata = {

View File

@ -14,10 +14,12 @@
* this program. If not, see <http://www.gnu.org/licenses/>. * this program. If not, see <http://www.gnu.org/licenses/>.
*/ */
#include <linux/cpu_pm.h>
#include <linux/init.h> #include <linux/init.h>
#include <linux/io.h> #include <linux/io.h>
#include <linux/suspend.h> #include <linux/suspend.h>
#include <asm/cacheflush.h>
#include <asm/proc-fns.h> #include <asm/proc-fns.h>
#include <asm/suspend.h> #include <asm/suspend.h>
@ -26,16 +28,31 @@
static int highbank_suspend_finish(unsigned long val) static int highbank_suspend_finish(unsigned long val)
{ {
outer_flush_all();
outer_disable();
highbank_set_pwr_suspend();
cpu_do_idle(); cpu_do_idle();
highbank_clear_pwr_request();
return 0; return 0;
} }
static int highbank_pm_enter(suspend_state_t state) static int highbank_pm_enter(suspend_state_t state)
{ {
hignbank_set_pwr_suspend(); cpu_pm_enter();
cpu_cluster_pm_enter();
highbank_set_cpu_jump(0, cpu_resume); highbank_set_cpu_jump(0, cpu_resume);
cpu_suspend(0, highbank_suspend_finish); cpu_suspend(0, highbank_suspend_finish);
cpu_cluster_pm_exit();
cpu_pm_exit();
highbank_smc1(0x102, 0x1);
if (scu_base_addr)
scu_enable(scu_base_addr);
return 0; return 0;
} }

View File

@ -44,28 +44,43 @@ static inline void highbank_set_core_pwr(void)
writel_relaxed(1, sregs_base + SREG_CPU_PWR_CTRL(cpu)); writel_relaxed(1, sregs_base + SREG_CPU_PWR_CTRL(cpu));
} }
static inline void hignbank_set_pwr_suspend(void) static inline void highbank_clear_core_pwr(void)
{
int cpu = cpu_logical_map(smp_processor_id());
if (scu_base_addr)
scu_power_mode(scu_base_addr, SCU_PM_NORMAL);
else
writel_relaxed(0, sregs_base + SREG_CPU_PWR_CTRL(cpu));
}
static inline void highbank_set_pwr_suspend(void)
{ {
writel(HB_PWR_SUSPEND, sregs_base + HB_SREG_A9_PWR_REQ); writel(HB_PWR_SUSPEND, sregs_base + HB_SREG_A9_PWR_REQ);
highbank_set_core_pwr(); highbank_set_core_pwr();
} }
static inline void hignbank_set_pwr_shutdown(void) static inline void highbank_set_pwr_shutdown(void)
{ {
writel(HB_PWR_SHUTDOWN, sregs_base + HB_SREG_A9_PWR_REQ); writel(HB_PWR_SHUTDOWN, sregs_base + HB_SREG_A9_PWR_REQ);
highbank_set_core_pwr(); highbank_set_core_pwr();
} }
static inline void hignbank_set_pwr_soft_reset(void) static inline void highbank_set_pwr_soft_reset(void)
{ {
writel(HB_PWR_SOFT_RESET, sregs_base + HB_SREG_A9_PWR_REQ); writel(HB_PWR_SOFT_RESET, sregs_base + HB_SREG_A9_PWR_REQ);
highbank_set_core_pwr(); highbank_set_core_pwr();
} }
static inline void hignbank_set_pwr_hard_reset(void) static inline void highbank_set_pwr_hard_reset(void)
{ {
writel(HB_PWR_HARD_RESET, sregs_base + HB_SREG_A9_PWR_REQ); writel(HB_PWR_HARD_RESET, sregs_base + HB_SREG_A9_PWR_REQ);
highbank_set_core_pwr(); highbank_set_core_pwr();
} }
static inline void highbank_clear_pwr_request(void)
{
writel(~0UL, sregs_base + HB_SREG_A9_PWR_REQ);
highbank_clear_core_pwr();
}
#endif #endif

View File

@ -22,9 +22,9 @@
void highbank_restart(char mode, const char *cmd) void highbank_restart(char mode, const char *cmd)
{ {
if (mode == 'h') if (mode == 'h')
hignbank_set_pwr_hard_reset(); highbank_set_pwr_hard_reset();
else else
hignbank_set_pwr_soft_reset(); highbank_set_pwr_soft_reset();
while (1) while (1)
cpu_do_idle(); cpu_do_idle();

View File

@ -841,8 +841,6 @@ config SOC_IMX6Q
select ARCH_HAS_CPUFREQ select ARCH_HAS_CPUFREQ
select ARCH_HAS_OPP select ARCH_HAS_OPP
select ARM_CPU_SUSPEND if PM select ARM_CPU_SUSPEND if PM
select ARM_ERRATA_743622
select ARM_ERRATA_751472
select ARM_ERRATA_754322 select ARM_ERRATA_754322
select ARM_ERRATA_764369 if SMP select ARM_ERRATA_764369 if SMP
select ARM_ERRATA_775420 select ARM_ERRATA_775420

View File

@ -188,7 +188,7 @@ static struct cpufreq_driver mxc_driver = {
.name = "imx", .name = "imx",
}; };
static int __devinit mxc_cpufreq_driver_init(void) static int mxc_cpufreq_driver_init(void)
{ {
return cpufreq_register_driver(&mxc_driver); return cpufreq_register_driver(&mxc_driver);
} }

View File

@ -21,7 +21,7 @@
#define BP_MMDC_MAPSR_PSD 0 #define BP_MMDC_MAPSR_PSD 0
#define BP_MMDC_MAPSR_PSS 4 #define BP_MMDC_MAPSR_PSS 4
static int __devinit imx_mmdc_probe(struct platform_device *pdev) static int imx_mmdc_probe(struct platform_device *pdev)
{ {
struct device_node *np = pdev->dev.of_node; struct device_node *np = pdev->dev.of_node;
void __iomem *mmdc_base, *reg; void __iomem *mmdc_base, *reg;

View File

@ -504,7 +504,7 @@ iop13xx_pci_abort(unsigned long addr, unsigned int fsr, struct pt_regs *regs)
/* Scan an IOP13XX PCI bus. nr selects which ATU we use. /* Scan an IOP13XX PCI bus. nr selects which ATU we use.
*/ */
struct pci_bus * __devinit iop13xx_scan_bus(int nr, struct pci_sys_data *sys) struct pci_bus *iop13xx_scan_bus(int nr, struct pci_sys_data *sys)
{ {
int which_atu; int which_atu;
struct pci_bus *bus = NULL; struct pci_bus *bus = NULL;

View File

@ -67,6 +67,10 @@ static void __init kirkwood_legacy_clk_init(void)
orion_clkdev_add(NULL, "mv643xx_eth_port.1", orion_clkdev_add(NULL, "mv643xx_eth_port.1",
of_clk_get_from_provider(&clkspec)); of_clk_get_from_provider(&clkspec));
clkspec.args[0] = CGC_BIT_SDIO;
orion_clkdev_add(NULL, "mvsdio",
of_clk_get_from_provider(&clkspec));
} }
static void __init kirkwood_of_clk_init(void) static void __init kirkwood_of_clk_init(void)

View File

@ -64,8 +64,6 @@ static unsigned int topkick_mpp_config[] __initdata = {
0 0
}; };
#define TOPKICK_SATA0_PWR_ENABLE 36
void __init usi_topkick_init(void) void __init usi_topkick_init(void)
{ {
/* /*
@ -73,8 +71,6 @@ void __init usi_topkick_init(void)
*/ */
kirkwood_mpp_conf(topkick_mpp_config); kirkwood_mpp_conf(topkick_mpp_config);
/* SATA0 power enable */
gpio_set_value(TOPKICK_SATA0_PWR_ENABLE, 1);
kirkwood_ge00_init(&topkick_ge00_data); kirkwood_ge00_init(&topkick_ge00_data);
kirkwood_sdio_init(&topkick_mvsdio_data); kirkwood_sdio_init(&topkick_mvsdio_data);

View File

@ -214,7 +214,7 @@ static int __init kirkwood_pcie_setup(int nr, struct pci_sys_data *sys)
* PCI_CLASS_BRIDGE_HOST or Linux will errantly try to process the BAR's on * PCI_CLASS_BRIDGE_HOST or Linux will errantly try to process the BAR's on
* the device. Decoding setup is handled by the orion code. * the device. Decoding setup is handled by the orion code.
*/ */
static void __devinit rc_pci_fixup(struct pci_dev *dev) static void rc_pci_fixup(struct pci_dev *dev)
{ {
if (dev->bus->parent == NULL && dev->devfn == 0) { if (dev->bus->parent == NULL && dev->devfn == 0) {
int i; int i;

View File

@ -92,7 +92,7 @@ static struct i2c_board_info acs5k_i2c_devs[] __initdata = {
}, },
}; };
static void __devinit acs5k_i2c_init(void) static void acs5k_i2c_init(void)
{ {
/* The gpio interface */ /* The gpio interface */
platform_device_register(&acs5k_i2c_device); platform_device_register(&acs5k_i2c_device);

View File

@ -61,7 +61,7 @@ struct gen_pool *sram_get_gpool(char *pool_name)
} }
EXPORT_SYMBOL(sram_get_gpool); EXPORT_SYMBOL(sram_get_gpool);
static int __devinit sram_probe(struct platform_device *pdev) static int sram_probe(struct platform_device *pdev)
{ {
struct sram_platdata *pdata = pdev->dev.platform_data; struct sram_platdata *pdata = pdev->dev.platform_data;
struct sram_bank_info *info; struct sram_bank_info *info;
@ -125,7 +125,7 @@ out:
return ret; return ret;
} }
static int __devexit sram_remove(struct platform_device *pdev) static int sram_remove(struct platform_device *pdev)
{ {
struct sram_bank_info *info; struct sram_bank_info *info;

View File

@ -120,7 +120,7 @@ int msm_proc_comm(unsigned cmd, unsigned *data1, unsigned *data2)
* and unknown state. This function should be called early to * and unknown state. This function should be called early to
* wait on the ARM9. * wait on the ARM9.
*/ */
void __devinit proc_comm_boot_wait(void) void proc_comm_boot_wait(void)
{ {
void __iomem *base = MSM_SHARED_RAM_BASE; void __iomem *base = MSM_SHARED_RAM_BASE;

View File

@ -988,7 +988,7 @@ int smd_core_init(void)
return 0; return 0;
} }
static int __devinit msm_smd_probe(struct platform_device *pdev) static int msm_smd_probe(struct platform_device *pdev)
{ {
/* /*
* If we haven't waited for the ARM9 to boot up till now, * If we haven't waited for the ARM9 to boot up till now,

View File

@ -173,7 +173,7 @@ static struct pci_ops pcie_ops = {
.write = pcie_wr_conf, .write = pcie_wr_conf,
}; };
static void __devinit rc_pci_fixup(struct pci_dev *dev) static void rc_pci_fixup(struct pci_dev *dev)
{ {
/* /*
* Prevent enumeration of root complex. * Prevent enumeration of root complex.

View File

@ -27,7 +27,6 @@
#include <linux/pinctrl/machine.h> #include <linux/pinctrl/machine.h>
#include <linux/platform_data/pinctrl-nomadik.h> #include <linux/platform_data/pinctrl-nomadik.h>
#include <linux/platform_data/clocksource-nomadik-mtu.h> #include <linux/platform_data/clocksource-nomadik-mtu.h>
#include <linux/platform_data/mtd-nomadik-nand.h>
#include <asm/hardware/vic.h> #include <asm/hardware/vic.h>
#include <asm/sizes.h> #include <asm/sizes.h>
#include <asm/mach-types.h> #include <asm/mach-types.h>

View File

@ -22,49 +22,49 @@
#include <mach/hardware.h> #include <mach/hardware.h>
#define IRQ_VIC_START 1 /* first VIC interrupt is 1 */ #define IRQ_VIC_START 32 /* first VIC interrupt is 1 */
/* /*
* Interrupt numbers generic for all Nomadik Chip cuts * Interrupt numbers generic for all Nomadik Chip cuts
*/ */
#define IRQ_WATCHDOG 1 #define IRQ_WATCHDOG (IRQ_VIC_START+0)
#define IRQ_SOFTINT 2 #define IRQ_SOFTINT (IRQ_VIC_START+1)
#define IRQ_CRYPTO 3 #define IRQ_CRYPTO (IRQ_VIC_START+2)
#define IRQ_OWM 4 #define IRQ_OWM (IRQ_VIC_START+3)
#define IRQ_MTU0 5 #define IRQ_MTU0 (IRQ_VIC_START+4)
#define IRQ_MTU1 6 #define IRQ_MTU1 (IRQ_VIC_START+5)
#define IRQ_GPIO0 7 #define IRQ_GPIO0 (IRQ_VIC_START+6)
#define IRQ_GPIO1 8 #define IRQ_GPIO1 (IRQ_VIC_START+7)
#define IRQ_GPIO2 9 #define IRQ_GPIO2 (IRQ_VIC_START+8)
#define IRQ_GPIO3 10 #define IRQ_GPIO3 (IRQ_VIC_START+9)
#define IRQ_RTC_RTT 11 #define IRQ_RTC_RTT (IRQ_VIC_START+10)
#define IRQ_SSP 12 #define IRQ_SSP (IRQ_VIC_START+11)
#define IRQ_UART0 13 #define IRQ_UART0 (IRQ_VIC_START+12)
#define IRQ_DMA1 14 #define IRQ_DMA1 (IRQ_VIC_START+13)
#define IRQ_CLCD_MDIF 15 #define IRQ_CLCD_MDIF (IRQ_VIC_START+14)
#define IRQ_DMA0 16 #define IRQ_DMA0 (IRQ_VIC_START+15)
#define IRQ_PWRFAIL 17 #define IRQ_PWRFAIL (IRQ_VIC_START+16)
#define IRQ_UART1 18 #define IRQ_UART1 (IRQ_VIC_START+17)
#define IRQ_FIRDA 19 #define IRQ_FIRDA (IRQ_VIC_START+18)
#define IRQ_MSP0 20 #define IRQ_MSP0 (IRQ_VIC_START+19)
#define IRQ_I2C0 21 #define IRQ_I2C0 (IRQ_VIC_START+20)
#define IRQ_I2C1 22 #define IRQ_I2C1 (IRQ_VIC_START+21)
#define IRQ_SDMMC 23 #define IRQ_SDMMC (IRQ_VIC_START+22)
#define IRQ_USBOTG 24 #define IRQ_USBOTG (IRQ_VIC_START+23)
#define IRQ_SVA_IT0 25 #define IRQ_SVA_IT0 (IRQ_VIC_START+24)
#define IRQ_SVA_IT1 26 #define IRQ_SVA_IT1 (IRQ_VIC_START+25)
#define IRQ_SAA_IT0 27 #define IRQ_SAA_IT0 (IRQ_VIC_START+26)
#define IRQ_SAA_IT1 28 #define IRQ_SAA_IT1 (IRQ_VIC_START+27)
#define IRQ_UART2 29 #define IRQ_UART2 (IRQ_VIC_START+28)
#define IRQ_MSP2 30 #define IRQ_MSP2 (IRQ_VIC_START+29)
#define IRQ_L2CC 49 #define IRQ_L2CC (IRQ_VIC_START+30)
#define IRQ_HPI 50 #define IRQ_HPI (IRQ_VIC_START+31)
#define IRQ_SKE 51 #define IRQ_SKE (IRQ_VIC_START+32)
#define IRQ_KP 52 #define IRQ_KP (IRQ_VIC_START+33)
#define IRQ_MEMST 55 #define IRQ_MEMST (IRQ_VIC_START+34)
#define IRQ_SGA_IT 59 #define IRQ_SGA_IT (IRQ_VIC_START+35)
#define IRQ_USBM 61 #define IRQ_USBM (IRQ_VIC_START+36)
#define IRQ_MSP1 63 #define IRQ_MSP1 (IRQ_VIC_START+37)
#define NOMADIK_GPIO_OFFSET (IRQ_VIC_START+64) #define NOMADIK_GPIO_OFFSET (IRQ_VIC_START+64)

View File

@ -160,7 +160,7 @@ static struct omap_lcd_config ams_delta_lcd_config __initdata = {
.ctrl_name = "internal", .ctrl_name = "internal",
}; };
static struct omap_usb_config ams_delta_usb_config = { static struct omap_usb_config ams_delta_usb_config __initdata = {
.register_host = 1, .register_host = 1,
.hmc_mode = 16, .hmc_mode = 16,
.pins[0] = 2, .pins[0] = 2,

View File

@ -142,7 +142,7 @@ static struct omap_mbox mbox_dsp_info = {
static struct omap_mbox *omap1_mboxes[] = { &mbox_dsp_info, NULL }; static struct omap_mbox *omap1_mboxes[] = { &mbox_dsp_info, NULL };
static int __devinit omap1_mbox_probe(struct platform_device *pdev) static int omap1_mbox_probe(struct platform_device *pdev)
{ {
struct resource *mem; struct resource *mem;
int ret; int ret;
@ -165,7 +165,7 @@ static int __devinit omap1_mbox_probe(struct platform_device *pdev)
return 0; return 0;
} }
static int __devexit omap1_mbox_remove(struct platform_device *pdev) static int omap1_mbox_remove(struct platform_device *pdev)
{ {
omap_mbox_unregister(); omap_mbox_unregister();
iounmap(mbox_base); iounmap(mbox_base);
@ -174,7 +174,7 @@ static int __devexit omap1_mbox_remove(struct platform_device *pdev)
static struct platform_driver omap1_mbox_driver = { static struct platform_driver omap1_mbox_driver = {
.probe = omap1_mbox_probe, .probe = omap1_mbox_probe,
.remove = __devexit_p(omap1_mbox_remove), .remove = omap1_mbox_remove,
.driver = { .driver = {
.name = "omap-mailbox", .name = "omap-mailbox",
}, },

View File

@ -629,8 +629,14 @@ static void __init omap_1510_usb_init(struct omap_usb_config *config)
static inline void omap_1510_usb_init(struct omap_usb_config *config) {} static inline void omap_1510_usb_init(struct omap_usb_config *config) {}
#endif #endif
void __init omap1_usb_init(struct omap_usb_config *pdata) void __init omap1_usb_init(struct omap_usb_config *_pdata)
{ {
struct omap_usb_config *pdata;
pdata = kmemdup(_pdata, sizeof(*pdata), GFP_KERNEL);
if (!pdata)
return;
pdata->usb0_init = omap1_usb0_init; pdata->usb0_init = omap1_usb0_init;
pdata->usb1_init = omap1_usb1_init; pdata->usb1_init = omap1_usb1_init;
pdata->usb2_init = omap1_usb2_init; pdata->usb2_init = omap1_usb2_init;

View File

@ -1167,6 +1167,8 @@ static const struct clk_ops emu_src_ck_ops = {
.recalc_rate = &omap2_clksel_recalc, .recalc_rate = &omap2_clksel_recalc,
.get_parent = &omap2_clksel_find_parent_index, .get_parent = &omap2_clksel_find_parent_index,
.set_parent = &omap2_clksel_set_parent, .set_parent = &omap2_clksel_set_parent,
.enable = &omap2_clkops_enable_clkdm,
.disable = &omap2_clkops_disable_clkdm,
}; };
static struct clk emu_src_ck; static struct clk emu_src_ck;

View File

@ -744,7 +744,7 @@ static int gpmc_setup_irq(void)
return request_irq(gpmc_irq, gpmc_handle_irq, 0, "gpmc", NULL); return request_irq(gpmc_irq, gpmc_handle_irq, 0, "gpmc", NULL);
} }
static __devexit int gpmc_free_irq(void) static int gpmc_free_irq(void)
{ {
int i; int i;
@ -762,7 +762,7 @@ static __devexit int gpmc_free_irq(void)
return 0; return 0;
} }
static void __devexit gpmc_mem_exit(void) static void gpmc_mem_exit(void)
{ {
int cs; int cs;
@ -774,7 +774,7 @@ static void __devexit gpmc_mem_exit(void)
} }
static int __devinit gpmc_mem_init(void) static int gpmc_mem_init(void)
{ {
int cs, rc; int cs, rc;
unsigned long boot_rom_space = 0; unsigned long boot_rom_space = 0;
@ -1121,7 +1121,7 @@ int gpmc_calc_timings(struct gpmc_timings *gpmc_t,
return 0; return 0;
} }
static __devinit int gpmc_probe(struct platform_device *pdev) static int gpmc_probe(struct platform_device *pdev)
{ {
int rc; int rc;
u32 l; u32 l;
@ -1177,7 +1177,7 @@ static __devinit int gpmc_probe(struct platform_device *pdev)
return 0; return 0;
} }
static __devexit int gpmc_remove(struct platform_device *pdev) static int gpmc_remove(struct platform_device *pdev)
{ {
gpmc_free_irq(); gpmc_free_irq();
gpmc_mem_exit(); gpmc_mem_exit();
@ -1187,7 +1187,7 @@ static __devexit int gpmc_remove(struct platform_device *pdev)
static struct platform_driver gpmc_driver = { static struct platform_driver gpmc_driver = {
.probe = gpmc_probe, .probe = gpmc_probe,
.remove = __devexit_p(gpmc_remove), .remove = gpmc_remove,
.driver = { .driver = {
.name = DEVICE_NAME, .name = DEVICE_NAME,
.owner = THIS_MODULE, .owner = THIS_MODULE,

View File

@ -342,7 +342,7 @@ struct omap_mbox mbox_2_info = {
struct omap_mbox *omap4_mboxes[] = { &mbox_1_info, &mbox_2_info, NULL }; struct omap_mbox *omap4_mboxes[] = { &mbox_1_info, &mbox_2_info, NULL };
#endif #endif
static int __devinit omap2_mbox_probe(struct platform_device *pdev) static int omap2_mbox_probe(struct platform_device *pdev)
{ {
struct resource *mem; struct resource *mem;
int ret; int ret;
@ -395,7 +395,7 @@ static int __devinit omap2_mbox_probe(struct platform_device *pdev)
return 0; return 0;
} }
static int __devexit omap2_mbox_remove(struct platform_device *pdev) static int omap2_mbox_remove(struct platform_device *pdev)
{ {
omap_mbox_unregister(); omap_mbox_unregister();
iounmap(mbox_base); iounmap(mbox_base);
@ -404,7 +404,7 @@ static int __devexit omap2_mbox_remove(struct platform_device *pdev)
static struct platform_driver omap2_mbox_driver = { static struct platform_driver omap2_mbox_driver = {
.probe = omap2_mbox_probe, .probe = omap2_mbox_probe,
.remove = __devexit_p(omap2_mbox_remove), .remove = omap2_mbox_remove,
.driver = { .driver = {
.name = "omap-mailbox", .name = "omap-mailbox",
}, },

View File

@ -2070,7 +2070,7 @@ static struct omap_hwmod_irq_info am33xx_usbss_mpu_irqs[] = {
{ .name = "usbss-irq", .irq = 17 + OMAP_INTC_START, }, { .name = "usbss-irq", .irq = 17 + OMAP_INTC_START, },
{ .name = "musb0-irq", .irq = 18 + OMAP_INTC_START, }, { .name = "musb0-irq", .irq = 18 + OMAP_INTC_START, },
{ .name = "musb1-irq", .irq = 19 + OMAP_INTC_START, }, { .name = "musb1-irq", .irq = 19 + OMAP_INTC_START, },
{ .irq = -1 + OMAP_INTC_START, }, { .irq = -1, },
}; };
static struct omap_hwmod am33xx_usbss_hwmod = { static struct omap_hwmod am33xx_usbss_hwmod = {
@ -2515,7 +2515,7 @@ static struct omap_hwmod_ocp_if am33xx_l4_hs__cpgmac0 = {
.user = OCP_USER_MPU, .user = OCP_USER_MPU,
}; };
struct omap_hwmod_addr_space am33xx_mdio_addr_space[] = { static struct omap_hwmod_addr_space am33xx_mdio_addr_space[] = {
{ {
.pa_start = 0x4A101000, .pa_start = 0x4A101000,
.pa_end = 0x4A101000 + SZ_256 - 1, .pa_end = 0x4A101000 + SZ_256 - 1,
@ -2523,7 +2523,7 @@ struct omap_hwmod_addr_space am33xx_mdio_addr_space[] = {
{ } { }
}; };
struct omap_hwmod_ocp_if am33xx_cpgmac0__mdio = { static struct omap_hwmod_ocp_if am33xx_cpgmac0__mdio = {
.master = &am33xx_cpgmac0_hwmod, .master = &am33xx_cpgmac0_hwmod,
.slave = &am33xx_mdio_hwmod, .slave = &am33xx_mdio_hwmod,
.addr = am33xx_mdio_addr_space, .addr = am33xx_mdio_addr_space,

View File

@ -27,6 +27,14 @@
#include "cm2xxx_3xxx.h" #include "cm2xxx_3xxx.h"
#include "prm-regbits-24xx.h" #include "prm-regbits-24xx.h"
/*
* OMAP24xx PM_PWSTCTRL_*.POWERSTATE and PM_PWSTST_*.LASTSTATEENTERED bits -
* these are reversed from the bits used on OMAP3+
*/
#define OMAP24XX_PWRDM_POWER_ON 0x0
#define OMAP24XX_PWRDM_POWER_RET 0x1
#define OMAP24XX_PWRDM_POWER_OFF 0x3
/* /*
* omap2xxx_prm_reset_src_map - map from bits in the PRM_RSTST_WKUP * omap2xxx_prm_reset_src_map - map from bits in the PRM_RSTST_WKUP
* hardware register (which are specific to the OMAP2xxx SoCs) to * hardware register (which are specific to the OMAP2xxx SoCs) to
@ -67,6 +75,34 @@ static u32 omap2xxx_prm_read_reset_sources(void)
return r; return r;
} }
/**
* omap2xxx_pwrst_to_common_pwrst - convert OMAP2xxx pwrst to common pwrst
* @omap2xxx_pwrst: OMAP2xxx hardware power state to convert
*
* Return the common power state bits corresponding to the OMAP2xxx
* hardware power state bits @omap2xxx_pwrst, or -EINVAL upon error.
*/
static int omap2xxx_pwrst_to_common_pwrst(u8 omap2xxx_pwrst)
{
u8 pwrst;
switch (omap2xxx_pwrst) {
case OMAP24XX_PWRDM_POWER_OFF:
pwrst = PWRDM_POWER_OFF;
break;
case OMAP24XX_PWRDM_POWER_RET:
pwrst = PWRDM_POWER_RET;
break;
case OMAP24XX_PWRDM_POWER_ON:
pwrst = PWRDM_POWER_ON;
break;
default:
return -EINVAL;
}
return pwrst;
}
/** /**
* omap2xxx_prm_dpll_reset - use DPLL reset to reboot the OMAP SoC * omap2xxx_prm_dpll_reset - use DPLL reset to reboot the OMAP SoC
* *
@ -97,10 +133,56 @@ int omap2xxx_clkdm_wakeup(struct clockdomain *clkdm)
return 0; return 0;
} }
static int omap2xxx_pwrdm_set_next_pwrst(struct powerdomain *pwrdm, u8 pwrst)
{
u8 omap24xx_pwrst;
switch (pwrst) {
case PWRDM_POWER_OFF:
omap24xx_pwrst = OMAP24XX_PWRDM_POWER_OFF;
break;
case PWRDM_POWER_RET:
omap24xx_pwrst = OMAP24XX_PWRDM_POWER_RET;
break;
case PWRDM_POWER_ON:
omap24xx_pwrst = OMAP24XX_PWRDM_POWER_ON;
break;
default:
return -EINVAL;
}
omap2_prm_rmw_mod_reg_bits(OMAP_POWERSTATE_MASK,
(omap24xx_pwrst << OMAP_POWERSTATE_SHIFT),
pwrdm->prcm_offs, OMAP2_PM_PWSTCTRL);
return 0;
}
static int omap2xxx_pwrdm_read_next_pwrst(struct powerdomain *pwrdm)
{
u8 omap2xxx_pwrst;
omap2xxx_pwrst = omap2_prm_read_mod_bits_shift(pwrdm->prcm_offs,
OMAP2_PM_PWSTCTRL,
OMAP_POWERSTATE_MASK);
return omap2xxx_pwrst_to_common_pwrst(omap2xxx_pwrst);
}
static int omap2xxx_pwrdm_read_pwrst(struct powerdomain *pwrdm)
{
u8 omap2xxx_pwrst;
omap2xxx_pwrst = omap2_prm_read_mod_bits_shift(pwrdm->prcm_offs,
OMAP2_PM_PWSTST,
OMAP_POWERSTATEST_MASK);
return omap2xxx_pwrst_to_common_pwrst(omap2xxx_pwrst);
}
struct pwrdm_ops omap2_pwrdm_operations = { struct pwrdm_ops omap2_pwrdm_operations = {
.pwrdm_set_next_pwrst = omap2_pwrdm_set_next_pwrst, .pwrdm_set_next_pwrst = omap2xxx_pwrdm_set_next_pwrst,
.pwrdm_read_next_pwrst = omap2_pwrdm_read_next_pwrst, .pwrdm_read_next_pwrst = omap2xxx_pwrdm_read_next_pwrst,
.pwrdm_read_pwrst = omap2_pwrdm_read_pwrst, .pwrdm_read_pwrst = omap2xxx_pwrdm_read_pwrst,
.pwrdm_set_logic_retst = omap2_pwrdm_set_logic_retst, .pwrdm_set_logic_retst = omap2_pwrdm_set_logic_retst,
.pwrdm_set_mem_onst = omap2_pwrdm_set_mem_onst, .pwrdm_set_mem_onst = omap2_pwrdm_set_mem_onst,
.pwrdm_set_mem_retst = omap2_pwrdm_set_mem_retst, .pwrdm_set_mem_retst = omap2_pwrdm_set_mem_retst,

View File

@ -103,28 +103,6 @@ int omap2_prm_deassert_hardreset(s16 prm_mod, u8 rst_shift, u8 st_shift)
/* Powerdomain low-level functions */ /* Powerdomain low-level functions */
/* Common functions across OMAP2 and OMAP3 */ /* Common functions across OMAP2 and OMAP3 */
int omap2_pwrdm_set_next_pwrst(struct powerdomain *pwrdm, u8 pwrst)
{
omap2_prm_rmw_mod_reg_bits(OMAP_POWERSTATE_MASK,
(pwrst << OMAP_POWERSTATE_SHIFT),
pwrdm->prcm_offs, OMAP2_PM_PWSTCTRL);
return 0;
}
int omap2_pwrdm_read_next_pwrst(struct powerdomain *pwrdm)
{
return omap2_prm_read_mod_bits_shift(pwrdm->prcm_offs,
OMAP2_PM_PWSTCTRL,
OMAP_POWERSTATE_MASK);
}
int omap2_pwrdm_read_pwrst(struct powerdomain *pwrdm)
{
return omap2_prm_read_mod_bits_shift(pwrdm->prcm_offs,
OMAP2_PM_PWSTST,
OMAP_POWERSTATEST_MASK);
}
int omap2_pwrdm_set_mem_onst(struct powerdomain *pwrdm, u8 bank, int omap2_pwrdm_set_mem_onst(struct powerdomain *pwrdm, u8 bank,
u8 pwrst) u8 pwrst)
{ {

View File

@ -277,6 +277,28 @@ static u32 omap3xxx_prm_read_reset_sources(void)
/* Powerdomain low-level functions */ /* Powerdomain low-level functions */
static int omap3_pwrdm_set_next_pwrst(struct powerdomain *pwrdm, u8 pwrst)
{
omap2_prm_rmw_mod_reg_bits(OMAP_POWERSTATE_MASK,
(pwrst << OMAP_POWERSTATE_SHIFT),
pwrdm->prcm_offs, OMAP2_PM_PWSTCTRL);
return 0;
}
static int omap3_pwrdm_read_next_pwrst(struct powerdomain *pwrdm)
{
return omap2_prm_read_mod_bits_shift(pwrdm->prcm_offs,
OMAP2_PM_PWSTCTRL,
OMAP_POWERSTATE_MASK);
}
static int omap3_pwrdm_read_pwrst(struct powerdomain *pwrdm)
{
return omap2_prm_read_mod_bits_shift(pwrdm->prcm_offs,
OMAP2_PM_PWSTST,
OMAP_POWERSTATEST_MASK);
}
/* Applicable only for OMAP3. Not supported on OMAP2 */ /* Applicable only for OMAP3. Not supported on OMAP2 */
static int omap3_pwrdm_read_prev_pwrst(struct powerdomain *pwrdm) static int omap3_pwrdm_read_prev_pwrst(struct powerdomain *pwrdm)
{ {
@ -355,9 +377,9 @@ static int omap3_pwrdm_disable_hdwr_sar(struct powerdomain *pwrdm)
} }
struct pwrdm_ops omap3_pwrdm_operations = { struct pwrdm_ops omap3_pwrdm_operations = {
.pwrdm_set_next_pwrst = omap2_pwrdm_set_next_pwrst, .pwrdm_set_next_pwrst = omap3_pwrdm_set_next_pwrst,
.pwrdm_read_next_pwrst = omap2_pwrdm_read_next_pwrst, .pwrdm_read_next_pwrst = omap3_pwrdm_read_next_pwrst,
.pwrdm_read_pwrst = omap2_pwrdm_read_pwrst, .pwrdm_read_pwrst = omap3_pwrdm_read_pwrst,
.pwrdm_read_prev_pwrst = omap3_pwrdm_read_prev_pwrst, .pwrdm_read_prev_pwrst = omap3_pwrdm_read_prev_pwrst,
.pwrdm_set_logic_retst = omap2_pwrdm_set_logic_retst, .pwrdm_set_logic_retst = omap2_pwrdm_set_logic_retst,
.pwrdm_read_logic_pwrst = omap3_pwrdm_read_logic_pwrst, .pwrdm_read_logic_pwrst = omap3_pwrdm_read_logic_pwrst,

View File

@ -56,9 +56,9 @@ static struct omap_prcm_irq_setup omap4_prcm_irq_setup = {
* enumeration) * enumeration)
*/ */
static struct prm_reset_src_map omap44xx_prm_reset_src_map[] = { static struct prm_reset_src_map omap44xx_prm_reset_src_map[] = {
{ OMAP4430_RST_GLOBAL_WARM_SW_SHIFT, { OMAP4430_GLOBAL_WARM_SW_RST_SHIFT,
OMAP_GLOBAL_WARM_RST_SRC_ID_SHIFT }, OMAP_GLOBAL_WARM_RST_SRC_ID_SHIFT },
{ OMAP4430_RST_GLOBAL_COLD_SW_SHIFT, { OMAP4430_GLOBAL_COLD_RST_SHIFT,
OMAP_GLOBAL_COLD_RST_SRC_ID_SHIFT }, OMAP_GLOBAL_COLD_RST_SRC_ID_SHIFT },
{ OMAP4430_MPU_SECURITY_VIOL_RST_SHIFT, { OMAP4430_MPU_SECURITY_VIOL_RST_SHIFT,
OMAP_SECU_VIOL_RST_SRC_ID_SHIFT }, OMAP_SECU_VIOL_RST_SRC_ID_SHIFT },
@ -333,7 +333,7 @@ static u32 omap44xx_prm_read_reset_sources(void)
u32 r = 0; u32 r = 0;
u32 v; u32 v;
v = omap4_prm_read_inst_reg(OMAP4430_PRM_OCP_SOCKET_INST, v = omap4_prm_read_inst_reg(OMAP4430_PRM_DEVICE_INST,
OMAP4_RM_RSTST); OMAP4_RM_RSTST);
p = omap44xx_prm_reset_src_map; p = omap44xx_prm_reset_src_map;

View File

@ -62,8 +62,8 @@
/* OMAP4 specific register offsets */ /* OMAP4 specific register offsets */
#define OMAP4_RM_RSTCTRL 0x0000 #define OMAP4_RM_RSTCTRL 0x0000
#define OMAP4_RM_RSTTIME 0x0004 #define OMAP4_RM_RSTST 0x0004
#define OMAP4_RM_RSTST 0x0008 #define OMAP4_RM_RSTTIME 0x0008
#define OMAP4_PM_PWSTCTRL 0x0000 #define OMAP4_PM_PWSTCTRL 0x0000
#define OMAP4_PM_PWSTST 0x0004 #define OMAP4_PM_PWSTST 0x0004

View File

@ -506,7 +506,7 @@ static int __init pci_setup(struct pci_sys_data *sys)
/***************************************************************************** /*****************************************************************************
* General PCIe + PCI * General PCIe + PCI
****************************************************************************/ ****************************************************************************/
static void __devinit rc_pci_fixup(struct pci_dev *dev) static void rc_pci_fixup(struct pci_dev *dev)
{ {
/* /*
* Prevent enumeration of root complex. * Prevent enumeration of root complex.

View File

@ -123,7 +123,7 @@ static const struct of_device_id memc_ids[] = {
{} {}
}; };
static int __devinit sirfsoc_memc_probe(struct platform_device *op) static int sirfsoc_memc_probe(struct platform_device *op)
{ {
struct device_node *np = op->dev.of_node; struct device_node *np = op->dev.of_node;

View File

@ -107,7 +107,7 @@ static const struct of_device_id rtciobrg_ids[] = {
{} {}
}; };
static int __devinit sirfsoc_rtciobrg_probe(struct platform_device *op) static int sirfsoc_rtciobrg_probe(struct platform_device *op)
{ {
struct device_node *np = op->dev.of_node; struct device_node *np = op->dev.of_node;

View File

@ -198,7 +198,7 @@ static struct sharpsl_charger_machinfo corgi_pm_machinfo = {
static struct platform_device *corgipm_device; static struct platform_device *corgipm_device;
static int __devinit corgipm_init(void) static int corgipm_init(void)
{ {
int ret; int ret;

View File

@ -829,7 +829,7 @@ static const struct platform_suspend_ops sharpsl_pm_ops = {
}; };
#endif #endif
static int __devinit sharpsl_pm_probe(struct platform_device *pdev) static int sharpsl_pm_probe(struct platform_device *pdev)
{ {
int ret, irq; int ret, irq;
@ -941,7 +941,7 @@ static struct platform_driver sharpsl_pm_driver = {
}, },
}; };
static int __devinit sharpsl_pm_init(void) static int sharpsl_pm_init(void)
{ {
return platform_driver_register(&sharpsl_pm_driver); return platform_driver_register(&sharpsl_pm_driver);
} }

View File

@ -232,7 +232,7 @@ struct sharpsl_charger_machinfo spitz_pm_machinfo = {
static struct platform_device *spitzpm_device; static struct platform_device *spitzpm_device;
static int __devinit spitzpm_init(void) static int spitzpm_init(void)
{ {
int ret; int ret;

View File

@ -102,7 +102,7 @@ err_reset:
return rc; return rc;
} }
static int __devexit tosa_bt_remove(struct platform_device *dev) static int tosa_bt_remove(struct platform_device *dev)
{ {
struct tosa_bt_data *data = dev->dev.platform_data; struct tosa_bt_data *data = dev->dev.platform_data;
struct rfkill *rfk = platform_get_drvdata(dev); struct rfkill *rfk = platform_get_drvdata(dev);
@ -125,7 +125,7 @@ static int __devexit tosa_bt_remove(struct platform_device *dev)
static struct platform_driver tosa_bt_driver = { static struct platform_driver tosa_bt_driver = {
.probe = tosa_bt_probe, .probe = tosa_bt_probe,
.remove = __devexit_p(tosa_bt_remove), .remove = tosa_bt_remove,
.driver = { .driver = {
.name = "tosa-bt", .name = "tosa-bt",

View File

@ -62,7 +62,7 @@ static const struct rfkill_ops h1940bt_rfkill_ops = {
.set_block = h1940bt_set_block, .set_block = h1940bt_set_block,
}; };
static int __devinit h1940bt_probe(struct platform_device *pdev) static int h1940bt_probe(struct platform_device *pdev)
{ {
struct rfkill *rfk; struct rfkill *rfk;
int ret = 0; int ret = 0;

View File

@ -93,7 +93,7 @@ static struct notifier_block osiris_dvs_nb = {
.notifier_call = osiris_dvs_notify, .notifier_call = osiris_dvs_notify,
}; };
static int __devinit osiris_dvs_probe(struct platform_device *pdev) static int osiris_dvs_probe(struct platform_device *pdev)
{ {
int ret; int ret;
@ -126,7 +126,7 @@ err_nogpio:
return ret; return ret;
} }
static int __devexit osiris_dvs_remove(struct platform_device *pdev) static int osiris_dvs_remove(struct platform_device *pdev)
{ {
dev_info(&pdev->dev, "exiting\n"); dev_info(&pdev->dev, "exiting\n");
@ -167,7 +167,7 @@ static const struct dev_pm_ops osiris_dvs_pm = {
static struct platform_driver osiris_dvs_driver = { static struct platform_driver osiris_dvs_driver = {
.probe = osiris_dvs_probe, .probe = osiris_dvs_probe,
.remove = __devexit_p(osiris_dvs_remove), .remove = osiris_dvs_remove,
.driver = { .driver = {
.name = "osiris-dvs", .name = "osiris-dvs",
.owner = THIS_MODULE, .owner = THIS_MODULE,

View File

@ -290,7 +290,7 @@ static const struct i2c_board_info wm2200_i2c[] = {
.platform_data = &wm2200_pdata, }, .platform_data = &wm2200_pdata, },
}; };
static __devinitdata const struct { static const struct {
u8 id; u8 id;
u8 rev; u8 rev;
const char *name; const char *name;
@ -343,7 +343,7 @@ static __devinitdata const struct {
.i2c_devs = wm2200_i2c, .num_i2c_devs = ARRAY_SIZE(wm2200_i2c) }, .i2c_devs = wm2200_i2c, .num_i2c_devs = ARRAY_SIZE(wm2200_i2c) },
}; };
static __devinit int wlf_gf_module_probe(struct i2c_client *i2c, static int wlf_gf_module_probe(struct i2c_client *i2c,
const struct i2c_device_id *i2c_id) const struct i2c_device_id *i2c_id)
{ {
int ret, i, j, id, rev; int ret, i, j, id, rev;

Some files were not shown because too many files have changed in this diff Show More