summaryrefslogtreecommitdiff
path: root/drivers
AgeCommit message (Collapse)Author
2013-04-19dpaa_eth: add ethtool PAUSE frame supportCristian Bercaru
Change-Id: I52222f0bf60bb073bb3b77bf935a31e84b4939c0 Reviewed-on: http://git.am.freescale.net:8181/1545 Reviewed-by: Bucur Madalin-Cristian-B32716 <madalin.bucur@freescale.com> Reviewed-by: Sovaiala Cristian-Constantin-B39531 <Cristian.Sovaiala@freescale.com> Reviewed-by: Fleming Andrew-AFLEMING <AFLEMING@freescale.com> Tested-by: Fleming Andrew-AFLEMING <AFLEMING@freescale.com>
2013-04-19gianfar: remove the redundant backup/recover operationXie Xiaobo
Because introduce TXPAL space into skb_buffer, the timestamp will be placed into TXPAL, So the old backup/recover operation was redundant. Signed-off-by: Xie Xiaobo <X.Xie@freescale.com> Change-Id: Ie10571bf26fd73ca3cdca346c1783579d80f4faf Reviewed-on: http://git.am.freescale.net:8181/1599 Reviewed-by: Manoil Claudiu-B08782 <claudiu.manoil@freescale.com> Reviewed-by: Fleming Andrew-AFLEMING <AFLEMING@freescale.com> Tested-by: Fleming Andrew-AFLEMING <AFLEMING@freescale.com>
2013-04-19gianfar: Fix the incorrect handle of PTP circle bufferXie Xiaobo
When didn't find the timestamp for a ptp message, the current driver will empty the whole timestamp buffer. It will discard some timestamps that are still in effect. Apply this patch, It only discard these overdue timestamp. Signed-off-by: Xie Xiaobo <X.Xie@freescale.com> Change-Id: Ifce09e4148de02a7afad25bbfce3e2fb8faa2a98 Reviewed-on: http://git.am.freescale.net:8181/1530 Reviewed-by: Manoil Claudiu-B08782 <claudiu.manoil@freescale.com> Reviewed-by: Fleming Andrew-AFLEMING <AFLEMING@freescale.com> Tested-by: Fleming Andrew-AFLEMING <AFLEMING@freescale.com>
2013-04-19eSDHC: Enable IRQ detect mod for p1020 and p5040Haijun.Zhang
Card insert and remove interrupt can be generate and work well. So using IRQ mod for card detecting instead of polling mod. This patch can avoid the call trace bug used to produce. also can improve the performance for card data transfer. Avoid no necessary frequent access to cpu and card. Signed-off-by: Haijun Zhang <haijun.zhang@freescale.com> Change-Id: I06b98f0bdc5208d0bf41a2ca79a78435b5c1bd27 Reviewed-on: http://git.am.freescale.net:8181/1218 Reviewed-by: Xie Xiaobo-R63061 <X.Xie@freescale.com> Reviewed-by: Fleming Andrew-AFLEMING <AFLEMING@freescale.com> Tested-by: Fleming Andrew-AFLEMING <AFLEMING@freescale.com>
2013-04-19net/phy: Add Atheros AR8035 PHY supportChunhe Lan
The AR8035 is a single port 10/100/1000 Mbps tri-speed Ethernet PHY. It supports an RGMII interface to the MAC with wide RGMII I/O voltage support from 1.5V to 3.3V. Signed-off-by: Michael Johnston <michael.johnston@freescale.com> Signed-off-by: Chunhe Lan <Chunhe.Lan@freescale.com> Change-Id: I6676faab8cb43a42bad8517297d6c45f79a05923 Reviewed-on: http://git.am.freescale.net:8181/1571 Reviewed-by: Zang Tiefei-R61911 <tie-fei.zang@freescale.com> Reviewed-by: Fleming Andrew-AFLEMING <AFLEMING@freescale.com> Tested-by: Fleming Andrew-AFLEMING <AFLEMING@freescale.com>
2013-04-18fmd: Remove debug output for AdjustLinkAndy Fleming
This debug output was printing out a ton of messages on a perfectly functional system. Change-Id: I2377701d407b1b2f373997f58bc44c85f80182f1 Signed-off-by: Andy Fleming <afleming@freescale.com> Reviewed-on: http://git.am.freescale.net:8181/1562 Reviewed-by: Fleming Andrew-AFLEMING <AFLEMING@freescale.com> Tested-by: Fleming Andrew-AFLEMING <AFLEMING@freescale.com>
2013-04-18net/phy: Add support for dp8384x phyXie Xiaobo
Support National Semiconductor PHYs DP83848/83849. Signed-off-by: Xie Xiaobo <X.Xie@freescale.com> Change-Id: I0c1128512e3d80eb53af0e307ca42b3698668a40 Reviewed-on: http://git.am.freescale.net:8181/1154 Reviewed-by: Fleming Andrew-AFLEMING <AFLEMING@freescale.com> Tested-by: Fleming Andrew-AFLEMING <AFLEMING@freescale.com>
2013-04-18ASF-QoS: Enabling Tx Schdeuler by default in Kconfig.Sachin Saxena
- IF ASF-QoS is Enabled , Scheduler shall be enabled by default. - S/W shaper for NON-DPAA can be used only with S/W Scheduler. Change-Id: I0e09fe46281d4af1dc022c27665c89b2fb92a640 Signed-off-by: Sachin Saxena <sachin.saxena@freescale.com> Reviewed-on: http://git.am.freescale.net:8181/1485 Reviewed-by: Fleming Andrew-AFLEMING <AFLEMING@freescale.com> Tested-by: Fleming Andrew-AFLEMING <AFLEMING@freescale.com>
2013-04-18ASF-QOS: Adding API to configure QMAN Scheduler via ASFSachin Saxena
- API shall be defined & Exported only when ASF QOS is in use Change-Id: I026b34d6dec70f70cf44bcaa23573c18ff457b19 Signed-off-by: Sachin Saxena <sachin.saxena@freescale.com> Reviewed-on: http://git.am.freescale.net:8181/1378 Reviewed-by: Fleming Andrew-AFLEMING <AFLEMING@freescale.com> Tested-by: Fleming Andrew-AFLEMING <AFLEMING@freescale.com>
2013-04-18FMAN: Adding Wrapper API to use Rate Limiting FeatureSachin Saxena
- The API enables other module to Set / Delete Rate Limiting Feature on a given FMAN port. Change-Id: I28f0bdfb9ca2b1c97df6dfcb2456bc3730cfd7d2 Signed-off-by: Sachin Saxena <sachin.saxena@freescale.com> Reviewed-on: http://git.am.freescale.net:8181/1377 Reviewed-by: Fleming Andrew-AFLEMING <AFLEMING@freescale.com> Tested-by: Fleming Andrew-AFLEMING <AFLEMING@freescale.com>
2013-04-18Cleanup USDPAA resources when a process exitsRoy Pledge
Add an API to query the usage levels of DMA memory Elminates UIO and converts USDPAA to interact with the kernel via a character devicc Removed misc/devices fsl_usdpaa file Remove unneeded file Change-Id: I797548e2c79f7098e6378484bcae2b455f022cd4 Reviewed-on: http://git.am.freescale.net:8181/1546 Reviewed-by: Ladouceur Jeffrey-R11498 <Jeffrey.Ladouceur@freescale.com> Reviewed-by: Wang Haiying-R54964 <Haiying.Wang@freescale.com> Reviewed-by: Fleming Andrew-AFLEMING <AFLEMING@freescale.com> Tested-by: Fleming Andrew-AFLEMING <AFLEMING@freescale.com>
2013-04-18dpaa_eth: Add initial support for trace eventsIoana Radulescu
Create a basic framework and an example for using trace events in the DPAA ethernet driver. New trace events can be added in the dpaa_eth_trace.h file and called from relevant places in the driver code. Signed-off-by: Ioana Radulescu <ruxandra.radulescu@freescale.com> Change-Id: I7235ddc0f9fb69bbb8eaf506510e72bf2f63fb7d Reviewed-on: http://git.am.freescale.net:8181/1540 Reviewed-by: Hamciuc Bogdan-BHAMCIU1 <bogdan.hamciuc@freescale.com> Reviewed-by: Sovaiala Cristian-Constantin-B39531 <Cristian.Sovaiala@freescale.com> Reviewed-by: Bucur Madalin-Cristian-B32716 <madalin.bucur@freescale.com> Reviewed-by: Fleming Andrew-AFLEMING <AFLEMING@freescale.com> Tested-by: Fleming Andrew-AFLEMING <AFLEMING@freescale.com>
2013-04-18dpaa_eth: Add NETPOLL supportBogdan Hamciuc
Add NETPOLL support to the dpaa-ethernet driver. This is particularly useful in tandem with the Netconsole module, when we'd want to drop tons of logs (e.g. Ftrace logs) and the serial console is just too slow for that. Signed-off-by: Bogdan Hamciuc <bogdan.hamciuc@freescale.com> Change-Id: Ic20b62603c58910d86d17afdd9a85e4b049526f1 Reviewed-on: http://git.am.freescale.net:8181/1538 Reviewed-by: Sovaiala Cristian-Constantin-B39531 <Cristian.Sovaiala@freescale.com> Reviewed-by: Bucur Madalin-Cristian-B32716 <madalin.bucur@freescale.com> Reviewed-by: Fleming Andrew-AFLEMING <AFLEMING@freescale.com> Tested-by: Fleming Andrew-AFLEMING <AFLEMING@freescale.com>
2013-04-18dpaa_eth: allow MAC change while interface runningMarian Rotariu
Added private flag to net device to let user change the physical address even if the interface is up Signed-off-by: Marian Rotariu <marian.rotariu@freescale.com> Change-Id: I2b07a9e8ac86dae097e69882c4ea372a07899137 Reviewed-on: http://git.am.freescale.net:8181/1537 Reviewed-by: Hamciuc Bogdan-BHAMCIU1 <bogdan.hamciuc@freescale.com> Reviewed-by: Sovaiala Cristian-Constantin-B39531 <Cristian.Sovaiala@freescale.com> Reviewed-by: Bucur Madalin-Cristian-B32716 <madalin.bucur@freescale.com> Reviewed-by: Fleming Andrew-AFLEMING <AFLEMING@freescale.com> Tested-by: Fleming Andrew-AFLEMING <AFLEMING@freescale.com>
2013-04-18dpaa_eth: make use of skb_frag_dma_map()Madalin Bucur
Use convenience function to map fragment page. Signed-off-by: Madalin Bucur <madalin.bucur@freescale.com> Change-Id: If99e0692bddcd50661fb78be089d8f89c720cbca Reviewed-on: http://git.am.freescale.net:8181/1536 Reviewed-by: Hamciuc Bogdan-BHAMCIU1 <bogdan.hamciuc@freescale.com> Reviewed-by: Sovaiala Cristian-Constantin-B39531 <Cristian.Sovaiala@freescale.com> Reviewed-by: Fleming Andrew-AFLEMING <AFLEMING@freescale.com> Tested-by: Fleming Andrew-AFLEMING <AFLEMING@freescale.com>
2013-04-18dpaa-eth: Alloc NR_CPUS TX frame queuesCristian Sovaiala
No matter the number of TX frame queues specified in the device tree we allocate one frame queue for each CPU. For a number of frame queues smaller than the number of CPUs, certain queues will be allocated to more than one CPU. For a larger number of frame queues than available CPUs, a number of NR_CPUS frame queues will be used only. Signed-off-by: Cristian Sovaiala <cristian.sovaiala@freescale.com> Signed-off-by: Madalin Bucur <madalin.bucur@freescale.com> Change-Id: Ie00aae47d03ffed7d3e0b5e449557ab4c01e3288 Reviewed-on: http://git.am.freescale.net:8181/1535 Reviewed-by: Hamciuc Bogdan-BHAMCIU1 <bogdan.hamciuc@freescale.com> Reviewed-by: Sovaiala Cristian-Constantin-B39531 <Cristian.Sovaiala@freescale.com> Reviewed-by: Fleming Andrew-AFLEMING <AFLEMING@freescale.com> Tested-by: Fleming Andrew-AFLEMING <AFLEMING@freescale.com>
2013-04-18gianfar: add support for wake-on-packetchenhui zhao
On certain chip like MPC8536 and P1022, system can be waked up from sleep by user-defined packet and Magic Patcket.(The eTSEC cannot supports both types of wake-up event simultaneously.) This patch implements wake-up on user-defined patcket including ARP request packet and unicast patcket to this station. When entering suspend state, the gianfar driver sets receive queue filer table to filter all of packets except ARP request packet and unicast patcket to this station. The driver temporarily uses the last receive queue to receive the user defined packet. In suspend state, the receive part of eTSEC keeps working. When receiving a user defined packet, it generates an interrupt to wake up the system. The rule of the filer table is as below. if (arp request to local ip address) accept it to the last queue elif (unicast packet to local mac address) accept it to the last queue else reject it endif Note: The local ip/mac address is the ethernet primary IP/MAC address of the station. Do not support multiple IP/MAC addresses. Here is an example of enabling and testing wake up on user defined packet. ifconfig eth0 10.193.20.169 ethtool -s eth0 wol a echo standby > /sys/power/state or echo mem > /sys/power/state Ping from PC host to wake up the station: ping 10.193.20.169 Change-Id: Ib3a29047bb55c770fe8cacae3299a5e5f3420c89 Signed-off-by: Dave Liu <daveliu@freescale.com> Signed-off-by: Jin Qing <b24347@freescale.com> Signed-off-by: Li Yang <leoli@freescale.com> Signed-off-by: Zhao Chenhui <chenhui.zhao@freescale.com> Acked-by: Andy Fleming <afleming@freescale.com> Reviewed-on: http://git.am.freescale.net:8181/1517 Reviewed-by: Manoil Claudiu-B08782 <claudiu.manoil@freescale.com> Reviewed-by: Fleming Andrew-AFLEMING <AFLEMING@freescale.com> Tested-by: Fleming Andrew-AFLEMING <AFLEMING@freescale.com>
2013-04-18phy/10g: fix a logic errorShaohui Xie
The operator '!' is higher than '&', so there should be a parentheses. Signed-off-by: Shaohui Xie <Shaohui.Xie@freescale.com> Change-Id: Ib734ca0bd4b4ca7376bafdf4709114cdbde485c2 Reviewed-on: http://git.am.freescale.net:8181/1495 Reviewed-by: Zang Tiefei-R61911 <tie-fei.zang@freescale.com> Reviewed-by: Fleming Andrew-AFLEMING <AFLEMING@freescale.com> Tested-by: Fleming Andrew-AFLEMING <AFLEMING@freescale.com>
2013-04-18Changing poll operation from TDM port to TDM channelSandeep Singh
Since all read/write operations are in TDM are channel based, polling on TDM channel for data instead of TDM port before going for read/write. Also corrected a faulty error leg. Signed-off-by: Sandeep Singh <Sandeep@freescale.com> (cherry picked from commit 304c5cc5f167d1ac8990e36579cc2f87851f0cdd) Change-Id: I5c0ec540c0db8e538e2b650ac0a0d5bdffaca336 Reviewed-on: http://git.am.freescale.net:8181/1159 Reviewed-by: Xu Jiucheng-B37781 <Jiucheng.Xu@freescale.com> Reviewed-by: Fleming Andrew-AFLEMING <AFLEMING@freescale.com> Tested-by: Fleming Andrew-AFLEMING <AFLEMING@freescale.com>
2013-04-18clk: add PowerPC corenet clock driver supportTang Yuantian
This adds the clock driver for Freescale PowerPC corenet series SoCs using common clock infrastructure. Signed-off-by: Tang Yuantian <Yuantian.Tang@freescale.com> Signed-off-by: Li Yang <leoli@freescale.com> Change-Id: I0f32eb41af65374e0ddf936958fdadc22c18f764 Reviewed-on: http://git.am.freescale.net:8181/538 Reviewed-by: Wood Scott-B07421 <scottwood@freescale.com> Reviewed-by: Fleming Andrew-AFLEMING <AFLEMING@freescale.com> Tested-by: Fleming Andrew-AFLEMING <AFLEMING@freescale.com>
2013-04-18dpaa_eth: Add support for hardware timestampingMadalin Bucur
Add Linux conforming support for hardware timestamping. Minor fixes and comments about the FSL_DPA_1588 code. Signed-off-by: Madalin Bucur <madalin.bucur@freescale.com> Change-Id: I6f9cd77cbe157219cb77e87bb8cfd72bee037261 Reviewed-on: http://git.am.freescale.net:8181/1469 Reviewed-by: Radulescu Ruxandra Ioana-B05472 <ruxandra.radulescu@freescale.com> Reviewed-by: Fleming Andrew-AFLEMING <AFLEMING@freescale.com> Tested-by: Fleming Andrew-AFLEMING <AFLEMING@freescale.com>
2013-04-18dpaa_eth: Add support for new buffer layout parametersIoana Radulescu
The new chosen node mechanism allows a user to configure some extra per port parameters related to buffer layout. Add support in the ethernet driver to account for these new parameters and the changes in FMD wrapper API. Signed-off-by: Ioana Radulescu <ruxandra.radulescu@freescale.com> Change-Id: I54ef34be7b2ce1b644245816cbf234c8c6d8dcab Reviewed-on: http://git.am.freescale.net:8181/1468 Reviewed-by: Bucur Madalin-Cristian-B32716 <madalin.bucur@freescale.com> Reviewed-by: Sovaiala Cristian-Constantin-B39531 <Cristian.Sovaiala@freescale.com> Reviewed-by: Bercaru Cristian-B43982 <cristian.bercaru@freescale.com> Reviewed-by: Fleming Andrew-AFLEMING <AFLEMING@freescale.com> Tested-by: Fleming Andrew-AFLEMING <AFLEMING@freescale.com>
2013-04-18dpaa_eth: Allow separate buffer layouts per rx/tx portIoana Radulescu
Until now all ports expected the same (hardcoded) buffer layout, where buffer layout means: private data size, presence of parse results, hash results, timestamp. Buffer layout also influences the size of the buffers for private ports. Create a framework for configuring the buffer layout on a per rx/tx port basis. There is no change in functionality at the moment (the same values for buffer layout are kept). Signed-off-by: Ioana Radulescu <ruxandra.radulescu@freescale.com> Change-Id: I3792b095330575d199f4cbe071de718ae6d45ab1 Reviewed-on: http://git.am.freescale.net:8181/1467 Reviewed-by: Bucur Madalin-Cristian-B32716 <madalin.bucur@freescale.com> Reviewed-by: Fleming Andrew-AFLEMING <AFLEMING@freescale.com> Tested-by: Fleming Andrew-AFLEMING <AFLEMING@freescale.com>
2013-04-18dpaa_eth: Delay buffer pool seeding for private portsIoana Radulescu
Until now, all private ports had to be configured to use the same buffer size, as they all share a common buffer pool. Create the framework for working with different buffer sizes on the private ports; a single, common buffer pool is still used by all private ports. The pool is seeded with buffers large enough to accomodate frames for all private ports. In order to be able to compute the largest needed buffer size, the buffer pool seeding is delayed until the first private interface is raised. Temporarily disable the boot-time ethernet unit test, which requires the use of the common buffer pool. Signed-off-by: Ioana Radulescu <ruxandra.radulescu@freescale.com> Change-Id: I22d40d136e35320b7b4af76e18e53faff7460cbf Reviewed-on: http://git.am.freescale.net:8181/1466 Reviewed-by: Bucur Madalin-Cristian-B32716 <madalin.bucur@freescale.com> Reviewed-by: Fleming Andrew-AFLEMING <AFLEMING@freescale.com> Tested-by: Fleming Andrew-AFLEMING <AFLEMING@freescale.com>
2013-04-18uio: Add FSL RMan UIO driver supportMinghuan Lian
Add support to expose FSL RMan controller to user space via UIO system. The RMan is composed of a global configuration and multiple inbound classification units. We map the global configuration as one UIO device and each classification unit as a unique UIO device. Change-Id: Ia491dae0d82c5fee9eb7e2b535305b557ba7329a Signed-off-by: Minghuan Lian <Minghuan.Lian@freescale.com> Signed-off-by: Andy Fleming <afleming@freescale.com> Reviewed-on: http://git.am.freescale.net:8181/922 Reviewed-by: Fleming Andrew-AFLEMING <AFLEMING@freescale.com> Tested-by: Fleming Andrew-AFLEMING <AFLEMING@freescale.com>
2013-04-18Patch contains hook to offload FD to ASF instead of skb.Sunil Kumar Kori
Earlier in DPA, hook was given to offload skb to asf. This patch provides a hook to offload a FD to ASF instead of skb. Change-Id: I855dd48c127479ae60d3371d1956ba533d8e4407 Signed-off-by: Sunil Kumar Kori <Sunil.Kori@freescale.com> CR:ENGR00243312 Reviewed-on: http://git.am.freescale.net:8181/1294 Reviewed-by: Hamciuc Bogdan-BHAMCIU1 <bogdan.hamciuc@freescale.com> Reviewed-by: Fleming Andrew-AFLEMING <AFLEMING@freescale.com> Tested-by: Fleming Andrew-AFLEMING <AFLEMING@freescale.com>
2013-04-18eSDHC: remove duplicate code of sdhci-pltfm.cHaijun Zhang
Remove property of "broken-cd" from sdhci_get_of_property, In current dts, there is no such property. eSDHC had default quirk of SDHCI_QUIRK_BROKEN_CARD_DETECTION Signed-off-by: Haijun Zhang <Haijun.Zhang@freescale.com> CC: Fleming Andrew-AFLEMING <AFLEMING@freescale.com> CC: Xie Xiaobo-R63061 <X.Xie@freescale.com> Change-Id: I8d5bbd12e8ee0191978da25ea9bfa6482ddcf9b3 Reviewed-on: http://git.am.freescale.net:8181/1219 Reviewed-by: Xie Xiaobo-R63061 <X.Xie@freescale.com> Reviewed-by: Fleming Andrew-AFLEMING <AFLEMING@freescale.com> Tested-by: Fleming Andrew-AFLEMING <AFLEMING@freescale.com>
2013-04-18eSDHC: Add clock glitch impact list for errata A-003980Haijun Zhang
Add impact list for clock glitch errata. A-003980: SDHC: Clock glitch is generated on the card clock when software reset or clock divider change was implemented, all command will be timeout in this situation. This issue can be occured when card setup and software reset all command be issued. As errata said, this issue only exist on below board: T4240-R1.0 B4860-R1.0 P3041-R1.0 P3041-R2.0 P2041-R1.0 P2041-R1.1 P2041-R2.0 P1010-R1.0 Signed-off-by: Jerry Huang <Chang-Ming.Huang@freescale.com> Signed-off-by: Haijun Zhang <Haijun.Zhang@freescale.com> Change-Id: Ia4461974f7f08fe57997ca77036a0eeda57bea74 Reviewed-on: http://git.am.freescale.net:8181/918 Reviewed-by: Xie Xiaobo-R63061 <X.Xie@freescale.com> Reviewed-by: Fleming Andrew-AFLEMING <AFLEMING@freescale.com> Tested-by: Fleming Andrew-AFLEMING <AFLEMING@freescale.com>
2013-04-17usb/fsl: enable USB wakeupZhao Chenhui
To enable USB wakeup feature, * Add a interrupt flag IRQF_NO_SUSPEND to avoid the USB interrupt disabled when suspending. * Set the USB module as a wakeup source. Change-Id: I85b1b538175ded6e6f56f701d76f49da9884178f Signed-off-by: Zhao Chenhui <chenhui.zhao@freescale.com> Signed-off-by: Li Yang <leoli@freescale.com> Reviewed-on: http://git.am.freescale.net:8181/1448 Reviewed-by: Fleming Andrew-AFLEMING <AFLEMING@freescale.com> Tested-by: Fleming Andrew-AFLEMING <AFLEMING@freescale.com>
2013-04-17pme: Set uninitialized variableJeffrey Ladouceur
The max scan size should be set to zero if PME hw version doesn't match. In this case zero means no limit. Signed-off-by: Jeffrey Ladouceur <Jeffrey.Ladouceur@freescale.com> Change-Id: Ic1f756ac0971d27e9c103a2c27173c66dd14d519 Reviewed-on: http://git.am.freescale.net:8181/1361 Reviewed-by: Pledge Roy-R01356 <roy.pledge@freescale.com> Reviewed-by: Fleming Andrew-AFLEMING <AFLEMING@freescale.com> Tested-by: Fleming Andrew-AFLEMING <AFLEMING@freescale.com>
2013-04-17uio: add support to map SEC to user spaceLiu Po
This driver would map all SEC spaces to uio devices and map all the job rings to uio devices. The SEC space map the whole SEC register space to user space. Job ring uio device is convenient for job descriptor. The current version reserve the interrupt function for job ring. Change-Id: I876d46de1870e664ac87a526aead2cfe9592fc81 Signed-off-by: Liu po <po.liu@freescale.com> Signed-off-by: Minghuan Lian <Minghuan.Lian@freescale.com> Reviewed-on: http://git.am.freescale.net:8181/1196 Reviewed-by: Fleming Andrew-AFLEMING <AFLEMING@freescale.com> Tested-by: Fleming Andrew-AFLEMING <AFLEMING@freescale.com>
2013-04-17Merge remote-tracking branch 'origin/master'Scott Wood
2013-04-17Merge tag 'v3.8.8'Scott Wood
This is the 3.8.8 stable release Conflicts: include/linux/preempt.h
2013-04-17powerpc/uio: Add uio driver for rapidio message and doorbell unitsLiu Gang
For using the rapidio message and doorbell units in linux user space, need to build the uio devices in kernel space. The message and doorbell uio devices in kernel will map the units registers to user space and then the applications in user space can configure those registers and use the rapidio message and doorbell units. Signed-off-by: Liu Gang <Gang.Liu@freescale.com> Change-Id: Icfbc6e3cedc627b88143ae1656e6aebc4bd75684 Reviewed-on: http://git.am.freescale.net:8181/981 Reviewed-by: Lian Minghuan-B31939 <Minghuan.Lian@freescale.com> Reviewed-by: Zang Tiefei-R61911 <tie-fei.zang@freescale.com> Tested-by: Fleming Andrew-AFLEMING <AFLEMING@freescale.com> Reviewed-by: Fleming Andrew-AFLEMING <AFLEMING@freescale.com>
2013-04-17uio/dma: Add FSL PPC DMA UIO driver supportKai Jiang
Add support to expose FSL PPC DMA controller to user space. Each DMA controller is split until multiple (normally four) separate channels. We map each channel into a unique UIO device. Signed-off-by: Kai Jiang <Kai.Jiang@freescale.com> Signed-off-by: Kumar Gala <galak@kernel.crashing.org> Signed-off-by: Liu Gang <Gang.Liu@freescale.com> Change-Id: I6914bda4bf59ccf6a9f261b88260f03e7965ffa3 Reviewed-on: http://git.am.freescale.net:8181/980 Reviewed-by: Lian Minghuan-B31939 <Minghuan.Lian@freescale.com> Reviewed-by: Zang Tiefei-R61911 <tie-fei.zang@freescale.com> Tested-by: Fleming Andrew-AFLEMING <AFLEMING@freescale.com> Reviewed-by: Fleming Andrew-AFLEMING <AFLEMING@freescale.com>
2013-04-17uio/srio: Add FSL Serial RapidIO UIO driver supportKai Jiang
Add support to expose Serial RapidIO controller to user space. We split the controller between general control and per port memory bus access. Also add support to handle the SRIO error interrupt. Signed-off-by: Kai Jiang <Kai.Jiang@freescale.com> Signed-off-by: Minghuan Lian <Minghuan.Lian@freescale.com> Signed-off-by: Kumar Gala <galak@kernel.crashing.org> Signed-off-by: Liu Gang <Gang.Liu@freescale.com> Change-Id: Ic8ef32d5b665a94b35a3dd174691c3eca41339ea Reviewed-on: http://git.am.freescale.net:8181/979 Tested-by: Fleming Andrew-AFLEMING <AFLEMING@freescale.com> Reviewed-by: Fleming Andrew-AFLEMING <AFLEMING@freescale.com>
2013-04-17tty: don't deadlock while flushing workqueueSebastian Andrzej Siewior
commit 852e4a8152b427c3f318bb0e1b5e938d64dcdc32 upstream. Since commit 89c8d91e31f2 ("tty: localise the lock") I see a dead lock in one of my dummy_hcd + g_nokia test cases. The first run was usually okay, the second often resulted in a splat by lockdep and the third was usually a dead lock. Lockdep complained about tty->hangup_work and tty->legacy_mutex taken both ways: | ====================================================== | [ INFO: possible circular locking dependency detected ] | 3.7.0-rc6+ #204 Not tainted | ------------------------------------------------------- | kworker/2:1/35 is trying to acquire lock: | (&tty->legacy_mutex){+.+.+.}, at: [<c14051e6>] tty_lock_nested+0x36/0x80 | | but task is already holding lock: | ((&tty->hangup_work)){+.+...}, at: [<c104f6e4>] process_one_work+0x124/0x5e0 | | which lock already depends on the new lock. | | the existing dependency chain (in reverse order) is: | | -> #2 ((&tty->hangup_work)){+.+...}: | [<c107fe74>] lock_acquire+0x84/0x190 | [<c104d82d>] flush_work+0x3d/0x240 | [<c12e6986>] tty_ldisc_flush_works+0x16/0x30 | [<c12e7861>] tty_ldisc_release+0x21/0x70 | [<c12e0dfc>] tty_release+0x35c/0x470 | [<c1105e28>] __fput+0xd8/0x270 | [<c1105fcd>] ____fput+0xd/0x10 | [<c1051dd9>] task_work_run+0xb9/0xf0 | [<c1002a51>] do_notify_resume+0x51/0x80 | [<c140550a>] work_notifysig+0x35/0x3b | | -> #1 (&tty->legacy_mutex/1){+.+...}: | [<c107fe74>] lock_acquire+0x84/0x190 | [<c140276c>] mutex_lock_nested+0x6c/0x2f0 | [<c14051e6>] tty_lock_nested+0x36/0x80 | [<c1405279>] tty_lock_pair+0x29/0x70 | [<c12e0bb8>] tty_release+0x118/0x470 | [<c1105e28>] __fput+0xd8/0x270 | [<c1105fcd>] ____fput+0xd/0x10 | [<c1051dd9>] task_work_run+0xb9/0xf0 | [<c1002a51>] do_notify_resume+0x51/0x80 | [<c140550a>] work_notifysig+0x35/0x3b | | -> #0 (&tty->legacy_mutex){+.+.+.}: | [<c107f3c9>] __lock_acquire+0x1189/0x16a0 | [<c107fe74>] lock_acquire+0x84/0x190 | [<c140276c>] mutex_lock_nested+0x6c/0x2f0 | [<c14051e6>] tty_lock_nested+0x36/0x80 | [<c140523f>] tty_lock+0xf/0x20 | [<c12df8e4>] __tty_hangup+0x54/0x410 | [<c12dfcb2>] do_tty_hangup+0x12/0x20 | [<c104f763>] process_one_work+0x1a3/0x5e0 | [<c104fec9>] worker_thread+0x119/0x3a0 | [<c1055084>] kthread+0x94/0xa0 | [<c140ca37>] ret_from_kernel_thread+0x1b/0x28 | |other info that might help us debug this: | |Chain exists of: | &tty->legacy_mutex --> &tty->legacy_mutex/1 --> (&tty->hangup_work) | | Possible unsafe locking scenario: | | CPU0 CPU1 | ---- ---- | lock((&tty->hangup_work)); | lock(&tty->legacy_mutex/1); | lock((&tty->hangup_work)); | lock(&tty->legacy_mutex); | | *** DEADLOCK *** Before the path mentioned tty_ldisc_release() look like this: | tty_ldisc_halt(tty); | tty_ldisc_flush_works(tty); | tty_lock(); As it can be seen, it first flushes the workqueue and then grabs the tty_lock. Now we grab the lock first: | tty_lock_pair(tty, o_tty); | tty_ldisc_halt(tty); | tty_ldisc_flush_works(tty); so lockdep's complaint seems valid. The earlier version of this patch took the ldisc_mutex since the other user of tty_ldisc_flush_works() (tty_set_ldisc()) did this. Peter Hurley then said that it is should not be requried. Since it wasn't done earlier, I dropped this part. The code under tty_ldisc_kill() was executed earlier with the tty lock taken so it is taken again. I was able to reproduce the deadlock on v3.8-rc1, this patch fixes the problem in my testcase. I didn't notice any problems so far. Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de> Cc: Alan Cox <alan@linux.intel.com> Cc: Peter Hurley <peter@hurleysoftware.com> Cc: Bryan O'Donoghue <bryan.odonoghue.lkml@nexus-software.ie> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2013-04-17udl: handle EDID failure properly.Dave Airlie
commit 1baee58638fc58248625255f5c5fcdb987f11b1f upstream. Don't oops seems proper. Signed-off-by: Dave Airlie <airlied@redhat.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2013-04-17gpio: fix wrong checking condition for gpio rangeHaojian Zhuang
commit ad4e1a7caf937ad395ced585ca85a7d14395dc80 upstream. If index++ calculates from 0, the checking condition of "while (index++)" fails & it doesn't check any more. It doesn't follow the loop that used at here. Replace it by endless loop at here. Then it keeps parsing "gpio-ranges" property until it ends. Signed-off-by: Haojian Zhuang <haojian.zhuang@linaro.org> Reviewed-by: Linus Walleij <linus.walleij@linaro.org> Signed-off-by: Linus Walleij <linus.walleij@linaro.org> Signed-off-by: Jonghwan Choi <jhbird.choi@samsung.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2013-04-17target: Fix incorrect fallthrough of ALUA Standby/Offline/Transition CDBsNicholas Bellinger
commit 30f359a6f9da65a66de8cadf959f0f4a0d498bba upstream. This patch fixes a bug where a handful of informational / control CDBs that should be allowed during ALUA access state Standby/Offline/Transition where incorrectly returning CHECK_CONDITION + ASCQ_04H_ALUA_TG_PT_*. This includes INQUIRY + REPORT_LUNS, which would end up preventing LUN registration when LUN scanning occured during these ALUA access states. Signed-off-by: Nicholas Bellinger <nab@linux-iscsi.org> Cc: Hannes Reinecke <hare@suse.de> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2013-04-17SCSI: libsas: fix handling vacant phy in sas_set_ex_phy()Lukasz Dorau
commit d4a2618fa77b5e58ec15342972bd3505a1c3f551 upstream. If a result of the SMP discover function is PHY VACANT, the content of discover response structure (dr) is not valid. It sometimes happens that dr->attached_sas_addr can contain even SAS address of other phy. In such case an invalid phy is created, what causes NULL pointer dereference during destruction of expander's phys. So if a result of SMP function is PHY VACANT, the content of discover response structure (dr) must not be copied to phy structure. This patch fixes the following bug: BUG: unable to handle kernel NULL pointer dereference at 0000000000000030 IP: [<ffffffff811c9002>] sysfs_find_dirent+0x12/0x90 Call Trace: [<ffffffff811c95f5>] sysfs_get_dirent+0x35/0x80 [<ffffffff811cb55e>] sysfs_unmerge_group+0x1e/0xb0 [<ffffffff813329f4>] dpm_sysfs_remove+0x24/0x90 [<ffffffff8132b0f4>] device_del+0x44/0x1d0 [<ffffffffa016fc59>] sas_rphy_delete+0x9/0x20 [scsi_transport_sas] [<ffffffffa01a16f6>] sas_destruct_devices+0xe6/0x110 [libsas] [<ffffffff8107ac7c>] process_one_work+0x16c/0x350 [<ffffffff8107d84a>] worker_thread+0x17a/0x410 [<ffffffff81081b76>] kthread+0x96/0xa0 [<ffffffff81464944>] kernel_thread_helper+0x4/0x10 Signed-off-by: Lukasz Dorau <lukasz.dorau@intel.com> Signed-off-by: Pawel Baldysiak <pawel.baldysiak@intel.com> Reviewed-by: Maciej Patelczyk <maciej.patelczyk@intel.com> Signed-off-by: James Bottomley <JBottomley@Parallels.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2013-04-17Revert "brcmsmac: support 4313iPA"John W. Linville
commit 54683441a92ebe20c5282465ea6f21e5e74d2974 upstream. This reverts commit b6fc28a158076ca2764edc9a6d1e1402f56e1c0c. This commit is reported to cause a regression in the support for some revisions of 4313 ePA devices. http://marc.info/?l=linux-wireless&m=136360340200943&w=2 Conflicts: drivers/net/wireless/brcm80211/brcmsmac/phy/phy_lcn.c Reported-by: David Herrmann <dh.herrmann@gmail.com> Signed-off-by: John W. Linville <linville@tuxdriver.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2013-04-17dmaengine: omap-dma: Start DMA without delay for cyclic channelsPeter Ujfalusi
commit 765024697807ad1e1cac332aa891253ca4a339da upstream. cyclic DMA is only used by audio which needs DMA to be started without a delay. If the DMA for audio is started using the tasklet we experience random channel switch (to be more precise: channel shift). Reported-by: Peter Meerwald <pmeerw@pmeerw.net> Signed-off-by: Peter Ujfalusi <peter.ujfalusi@ti.com> Acked-by: Santosh Shilimkar <santosh.shilimkar@ti.com> Acked-by: Russell King <rmk+kernel@arm.linux.org.uk> Signed-off-by: Vinod Koul <vinod.koul@intel.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2013-04-16dpaa_eth: init two more parameters for the ports.Haiying Wang
We can not leave those parameters un-initialized, otherwise, kernel boot up may pick random values for those two parameters then crash at: " fsl_dpa: dpaa_eth.c:4217:dpa_load() fsl_dpa: FSL DPAA Ethernet driver () cpu0: ! MAJOR FM-SP Error [CPU00, drivers/net/ethernet/freescale/fman/ Peripherals/FM/SP/fm_sp.c:403 FmSpCheckBufMargins]: Invalid Value; " Signed-off-by: Haiying Wang <Haiying.Wang@freescale.com> Change-Id: I86aabcaf7a895b020456e3a01aff19425b03a17d Reviewed-on: http://git.am.freescale.net:8181/1404 Tested-by: Fleming Andrew-AFLEMING <AFLEMING@freescale.com> Reviewed-by: Fleming Andrew-AFLEMING <AFLEMING@freescale.com>
2013-04-16dpaa_eth: 64 instead of 32 bit NIC countersBogdan Hamciuc
Change the data type of several fields used in network interface statistics. 'dpa_get_stats64' replaces 'dpa_get_stats' and 'u64' replaces 'u32'. Use a new function for calculating statistics. 'dpa_get_stats64' replaces 'dpa_get_stats'. Signed-off-by: Cristian Bercaru <cristian.bercaru@freescale.com> Change-Id: I580a531315067b73692ec2a21e0f78552c8da381 Reviewed-on: http://git.am.freescale.net:8181/1401 Reviewed-by: Radulescu Ruxandra Ioana-B05472 <ruxandra.radulescu@freescale.com> Tested-by: Fleming Andrew-AFLEMING <AFLEMING@freescale.com> Reviewed-by: Fleming Andrew-AFLEMING <AFLEMING@freescale.com>
2013-04-16dpaa_eth: Switch compile default to "termination"Bogdan Hamciuc
Switch the default compile option from "optimize for ipfwd" to "optimize for termination". Signed-off-by: Bogdan Hamciuc <bogdan.hamciuc@freescale.com> Change-Id: I37b9b867b2f9787eb4a56a8005e198a2fb6430cc Reviewed-on: http://git.am.freescale.net:8181/1400 Reviewed-by: Radulescu Ruxandra Ioana-B05472 <ruxandra.radulescu@freescale.com> Tested-by: Fleming Andrew-AFLEMING <AFLEMING@freescale.com> Reviewed-by: Fleming Andrew-AFLEMING <AFLEMING@freescale.com>
2013-04-16dpaa_eth: Add support for the new netdev features frameworkIoana Radulescu
Kernel 3.8 brings a new way of organizing the netdev features (feature sets include hardware features, currently enabled features, vlan features and wanted features). Some ethtool ops also replaced by a set of new ndo's. Update the DPAA Ethernet driver to account for these changes. Signed-off-by: Ioana Radulescu <ruxandra.radulescu@freescale.com> Change-Id: I073920040f9c92665773cac5fb30d305320699be Reviewed-on: http://git.am.freescale.net:8181/1399 Tested-by: Fleming Andrew-AFLEMING <AFLEMING@freescale.com> Reviewed-by: Fleming Andrew-AFLEMING <AFLEMING@freescale.com>
2013-04-16Changes to support ASF QOS Integration with KernelSachin Saxena
Signed-off-by: Sachin Saxena <sachin.saxena@freescale.com> CQ ID : ENGR00253307 Change-Id: If090285cc4fdfe6a09bd62da1697a55404cdbce4 Reviewed-on: http://git.am.freescale.net:8181/1345 Reviewed-by: Gupta Rajan-B15745 <rajan.gupta@freescale.com> Tested-by: Fleming Andrew-AFLEMING <AFLEMING@freescale.com> Reviewed-by: Fleming Andrew-AFLEMING <AFLEMING@freescale.com>
2013-04-16eSDHC: Add broken ADMA quirk for T4 boardHaijun Zhang
eMMC build-in in T4 board can't work when use ADMA transfer data, but for SDHC card it work well. No ERRATA and relevant bugfix for this issue, so use SDMA instead get it working fist. Signed-off-by: Haijun Zhang <Haijun.Zhang@freescale.com> Signed-off-by: Jerry Huang <Chang-Ming.Huang@freescale.com> Signed-off-by: Chunhe Lan <Chunhe.Lan@freescale.com> Signed-off-by: Andy Fleming <afleming@freescale.com> Change-Id: Ifdb8cf3caa7b1904c252e435e94254d089ec23c4 Reviewed-on: http://git.am.freescale.net:8181/1215 Tested-by: Fleming Andrew-AFLEMING <AFLEMING@freescale.com> Reviewed-by: Fleming Andrew-AFLEMING <AFLEMING@freescale.com>
2013-04-16dpaa: Eliminate unused variableBogdan Hamciuc
commit be7eb995 dpaa_eth: Update PR processing routine on Rx path leaves an unitialized variable which triggers a compiler warning. Eliminating the unnecessary declaration. To avoid resubmitting the whole set of patches after that one, I'm adding this fix. *** Please squash this with "commit be7eb995 *** dpaa_eth: Update PR processing routine on Rx path" *** Change-Id: Id9d99a2b9ec53d87560d5367a22c1f1c67aa5b39 Signed-off-by: Bogdan Hamciuc <bogdan.hamciuc@freescale.com> Reviewed-on: http://git.am.freescale.net:8181/1289 Reviewed-by: Fleming Andrew-AFLEMING <AFLEMING@freescale.com> Tested-by: Fleming Andrew-AFLEMING <AFLEMING@freescale.com>