summaryrefslogtreecommitdiff
path: root/arch
AgeCommit message (Collapse)Author
2014-05-05sparc64: don't treat 64-bit syscall return codes as 32-bitDave Kleikamp
[ Upstream commit 1535bd8adbdedd60a0ee62e28fd5225d66434371 ] When checking a system call return code for an error, linux_sparc_syscall was sign-extending the lower 32-bit value and comparing it to -ERESTART_RESTARTBLOCK. lseek can return valid return codes whose lower 32-bits alone would indicate a failure (such as 4G-1). Use the whole 64-bit value to check for errors. Only the 32-bit path should sign extend the lower 32-bit value. Signed-off-by: Dave Kleikamp <dave.kleikamp@oracle.com> Acked-by: Bob Picco <bob.picco@oracle.com> Acked-by: Allen Pais <allen.pais@oracle.com> Cc: David S. Miller <davem@davemloft.net> Cc: sparclinux@vger.kernel.org Signed-off-by: David S. Miller <davem@davemloft.net> Signed-off-by: Jiri Slaby <jslaby@suse.cz>
2014-05-05sparc32: fix build failure for arch_jump_label_transformPaul Gortmaker
[ Upstream commit 4f6500fff5f7644a03c46728fd7ef0f62fa6940b ] In arch/sparc/Kernel/Makefile, we see: obj-$(CONFIG_SPARC64) += jump_label.o However, the Kconfig selects HAVE_ARCH_JUMP_LABEL unconditionally for all SPARC. This in turn leads to the following failure when doing allmodconfig coverage builds: kernel/built-in.o: In function `__jump_label_update': jump_label.c:(.text+0x8560c): undefined reference to `arch_jump_label_transform' kernel/built-in.o: In function `arch_jump_label_transform_static': (.text+0x85cf4): undefined reference to `arch_jump_label_transform' make: *** [vmlinux] Error 1 Change HAVE_ARCH_JUMP_LABEL to be conditional on SPARC64 so that it matches the Makefile. Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com> Signed-off-by: David S. Miller <davem@davemloft.net> Signed-off-by: Jiri Slaby <jslaby@suse.cz>
2014-05-05x86: Adjust irq remapping quirk for older revisions of 5500/5520 chipsetsNeil Horman
commit 6f8a1b335fde143b7407036e2368d3cd6eb55674 upstream. Commit 03bbcb2e7e2 (iommu/vt-d: add quirk for broken interrupt remapping on 55XX chipsets) properly disables irq remapping on the 5500/5520 chipsets that don't correctly perform that feature. However, when I wrote it, I followed the errata sheet linked in that commit too closely, and explicitly tied the activation of the quirk to revision 0x13 of the chip, under the assumption that earlier revisions were not in the field. Recently a system was reported to be suffering from this remap bug and the quirk hadn't triggered, because the revision id register read at a lower value that 0x13, so the quirk test failed improperly. Given this, it seems only prudent to adjust this quirk so that any revision less than 0x13 has the quirk asserted. [ tglx: Removed the 0x12 comparison of pci id 3405 as this is covered by the <= 0x13 check already ] Signed-off-by: Neil Horman <nhorman@tuxdriver.com> Cc: Ingo Molnar <mingo@redhat.com> Cc: "H. Peter Anvin" <hpa@zytor.com> Cc: x86@kernel.org Link: http://lkml.kernel.org/r/1394649873-14913-1-git-send-email-nhorman@tuxdriver.com Signed-off-by: Thomas Gleixner <tglx@linutronix.de> Signed-off-by: Jiri Slaby <jslaby@suse.cz>
2014-05-05powerpc/8xx: mfspr SPRN_TBRx in lieu of mftb/mftbu is not supportedLEROY Christophe
commit ae2163be10ac6090e7aeed72591e2d7fabb1cdda upstream. Commit beb2dc0a7a84be003ce54e98b95d65cc66e6e536 breaks the MPC8xx which seems to not support using mfspr SPRN_TBRx instead of mftb/mftbu despite what is written in the reference manual. This patch reverts to the use of mftb/mftbu when CONFIG_8xx is selected. Signed-off-by: Christophe Leroy <christophe.leroy@c-s.fr> Signed-off-by: Scott Wood <scottwood@freescale.com> Signed-off-by: Jiri Slaby <jslaby@suse.cz>
2014-05-05parisc: fix epoll_pwait syscall on compat kernelHelge Deller
commit ab3e55b119c9653b19ea4edffb86f04db867ac98 upstream. This bug was detected with the libio-epoll-perl debian package where the test case IO-Ppoll-compat.t failed. Signed-off-by: Helge Deller <deller@gmx.de> CC: stable@kernel.org # 3.0+ Signed-off-by: Jiri Slaby <jslaby@suse.cz>
2014-05-05x86/quirks: Add workaround for AMD F16h Erratum792Aravind Gopalakrishnan
commit fb53a1ab88d14848dc292842e35c3bda3a665997 upstream. The workaround for this Erratum is included in AGESA. But BIOSes spun only after Jan2014 will have the fix (atleast server versions of the chip). The erratum affects both embedded and server platforms and since we cannot say with certainity that ALL BIOSes on systems out in the field will have the fix, we should probably insulate ourselves in case BIOS does not do the right thing or someone is using old BIOSes. Refer to Revision Guide for AMD F16h models 00h-0fh, document 51810 Rev. 3.04, November2013 for details on the Erratum. Tested the patch on Fam16h server platform and it works fine. Signed-off-by: Aravind Gopalakrishnan <Aravind.Gopalakrishnan@amd.com> Cc: <hmh@hmh.eng.br> Cc: <Kim.Naru@amd.com> Cc: <Suravee.Suthikulpanit@amd.com> Cc: <bp@suse.de> Cc: <sherry.hurwitz@amd.com> Link: http://lkml.kernel.org/r/1390515212-1824-1-git-send-email-Aravind.Gopalakrishnan@amd.com [ Minor edits. ] Signed-off-by: Ingo Molnar <mingo@kernel.org> Signed-off-by: Jiri Slaby <jslaby@suse.cz>
2014-05-05ARM: 7840/1: LPAE: don't reject mapping /dev/mem above 4GBSergey Dyasly
commit 3159f372354e8e1f5dee714663d705dd2c7e0759 upstream. With LPAE enabled, physical address space is larger than 4GB. Allow mapping any part of it via /dev/mem by using PHYS_MASK to determine valid range. PHYS_MASK covers 40 bits with LPAE enabled and 32 bits otherwise. Reported-by: Vassili Karpov <av1474@comtv.ru> Signed-off-by: Sergey Dyasly <dserrg@gmail.com> Acked-by: Catalin Marinas <catalin.marinas@arm.com> Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk> Signed-off-by: Jiri Slaby <jslaby@suse.cz>
2014-05-03powerpc: move epapr paravirt init of power_save to an initcallStuart Yoder
some restructuring of epapr paravirt init resulted in ppc_md.power_save being set, and then overwritten to NULL during machine_init. This patch splits the initialization of ppc_md.power_save out into a postcore init call. Signed-off-by: Stuart Yoder <stuart.yoder@freescale.com> Change-Id: Id054bb9ab6b451d64835988a6b2ebe6cd54f85c3 Reviewed-on: http://git.am.freescale.net:8181/11766 Tested-by: Review Code-CDREVIEW <CDREVIEW@freescale.com> Reviewed-by: Scott Wood <scottwood@freescale.com> Reviewed-by: Jose Rivera <German.Rivera@freescale.com>
2014-05-01QE; add qe node for t1042qdsZhao Qiang
add qe node in file t1042qds.dts Signed-off-by: Zhao Qiang <B45475@freescale.com> Change-Id: Iffcbf31f75646f626addcc3c1c4c3baef97de569 Reviewed-on: http://git.am.freescale.net:8181/11523 Tested-by: Review Code-CDREVIEW <CDREVIEW@freescale.com> Reviewed-by: Xiaobo Xie <X.Xie@freescale.com> Reviewed-by: Jose Rivera <German.Rivera@freescale.com>
2014-04-30t4240rdb/dts: Fix mac address error of fm2-mac9 and fm2-mac10 portChunhe Lan
According to convention, 10Gbps SFP+ ports of fman2 should use eth14 address and eth15 address, and not eth4 address and eth5 address. Signed-off-by: Chunhe Lan <Chunhe.Lan@freescale.com> Change-Id: I8e85db7bdb2c06a3883e3d474e6d306371352ecc Reviewed-on: http://git.am.freescale.net:8181/11702 Tested-by: Review Code-CDREVIEW <CDREVIEW@freescale.com> Reviewed-by: Shaohui Xie <Shaohui.Xie@freescale.com> Reviewed-by: Jose Rivera <German.Rivera@freescale.com>
2014-04-30powerpc/t104x: fix deep sleep resume problem in 32-bit modeChenhui Zhao
Kernel in 32-bit mode can not resume to the command shell after waking from deep sleep. Changes: * change fsl_booke_entry_mapping.S to make it work under deep sleep context * fix bugs in sleep.S Change-Id: Ic5186267ae82d12165029093b49c257bba3a3cc1 Signed-off-by: Chenhui Zhao <chenhui.zhao@freescale.com> Reviewed-on: http://git.am.freescale.net:8181/11665 Tested-by: Review Code-CDREVIEW <CDREVIEW@freescale.com> Reviewed-by: Yang Li <LeoLi@freescale.com> Reviewed-by: Jose Rivera <German.Rivera@freescale.com>
2014-04-30powerpc/t104xqds: Update SPI flash type in device treePriyanka Jain
T104xqds boards has Micron, N25Q128A11ESF40F type flash. Update Compatible field in spi node in dts for this. Signed-off-by: Priyanka Jain <Priyanka.Jain@freescale.com> Change-Id: Ib1dadd7549c8348eba55be0c52f7537a37da1347 Reviewed-on: http://git.am.freescale.net:8181/11262 Tested-by: Review Code-CDREVIEW <CDREVIEW@freescale.com> Reviewed-by: Prabhakar Kushwaha <prabhakar@freescale.com> Reviewed-by: Jose Rivera <German.Rivera@freescale.com>
2014-04-30fmd: extend workaround of fman reset for T4080Shengzhou Liu
The same hang issue was observed on T4080 as well. Signed-off-by: Shengzhou Liu <Shengzhou.Liu@freescale.com> Change-Id: Ie4327353b43444dc3d312765ca5842cf63cf6428 Reviewed-on: http://git.am.freescale.net:8181/11296 Tested-by: Review Code-CDREVIEW <CDREVIEW@freescale.com> Reviewed-by: Xiaobo Xie <X.Xie@freescale.com> Reviewed-by: Jose Rivera <German.Rivera@freescale.com>
2014-04-30KVM: PPC: e500mc: Advertise E.PT to support HTW guestsMihai Caraman
Enable E.PT for vcpus with MMU MAV 2.0 to support Hardware Page Tablewalk (HTW) in guests. Signed-off-by: Mihai Caraman <mihai.caraman@freescale.com> (cherry picked and merged from sdk1.5 commit 815866e615d1452083c7f379391926aa42eddcf0) Change-Id: Ia73322e2d4eaff2acc62afb6e3b36f27d751dc29 Reviewed-on: http://git.am.freescale.net:8181/11563 Tested-by: Review Code-CDREVIEW <CDREVIEW@freescale.com> Reviewed-by: Stuart Yoder <stuart.yoder@freescale.com> Reviewed-by: Jose Rivera <German.Rivera@freescale.com>
2014-04-30KVM: PPC: e500: Fix tlbilx_all emulation for HTWMihai Caraman
tlbilx_all emulation requies HW TLB invalidation for entries added by HTW. Add inval_tlb_on_host() function to do this invalidation and move inval_ea_on_host() to a common place. Add dedicated functions for lpid and pid tlb invalidation refactoring the existing kvmppc_e500_tlbil_all() function. Signed-off-by: Mihai Caraman <mihai.caraman@freescale.com> (cherry picked and merged from sdk1.5 commit f9efafeef721d45eb60cdfe45534a788ca55f0bd) Change-Id: I4231ac6ac60927256d1a99084812bf958ac94f71 Reviewed-on: http://git.am.freescale.net:8181/11562 Tested-by: Review Code-CDREVIEW <CDREVIEW@freescale.com> Reviewed-by: Stuart Yoder <stuart.yoder@freescale.com> Reviewed-by: Jose Rivera <German.Rivera@freescale.com>
2014-04-30KVM: PPC: e500: TLB emulation for IND entriesMihai Caraman
Handle indirect entries (IND) in TLB emulation code. Translation size of IND entries differ from the size of referred Page Tables (Linux guests now use IND of 2MB for 4KB PTs) and this require careful tweak of the existing logic. TLB search emulation requires additional search in HW TLB0 (since these entries are directly added by HTW) and found entries shoud be presented to the guest with RPN changed from PFN to GFN. There might be more GFNs pointing to the same PFN so the only way to get the corresponding GFN is to search it in guest's PTE. If IND entry for the corresponding PT is not available just invalidate guest's ea and report a tlbsx miss. This patch only implements the invalidation and let a TODO note for searching HW TLB0. Signed-off-by: Mihai Caraman <mihai.caraman@freescale.com> (cherry picked and merged from sdk1.5 commit fa267bdd889348c8f7f1ebd0f72173ad5c780abc) Change-Id: Ibb3910c44a5413aa0b2ace0c858f46643c0dfa8d Reviewed-on: http://git.am.freescale.net:8181/11561 Tested-by: Review Code-CDREVIEW <CDREVIEW@freescale.com> Reviewed-by: Stuart Yoder <stuart.yoder@freescale.com> Reviewed-by: Jose Rivera <German.Rivera@freescale.com>
2014-04-30KVM: PPC: Book3E: Handle LRAT error exceptionMihai Caraman
Handle LRAT error exception with support for lrat mapping/invalidation and prepare for emulation. Signed-off-by: Mihai Caraman <mihai.caraman@freescale.com> (cherry picked and merged from sdk1.5 commit fd2bba8b66657eb452c152d6cf0b1cd4320df204) Change-Id: Ifa9a9ce3a9aacab53f6184b2aff00edde1acf47d Reviewed-on: http://git.am.freescale.net:8181/11560 Tested-by: Review Code-CDREVIEW <CDREVIEW@freescale.com> Reviewed-by: Stuart Yoder <stuart.yoder@freescale.com> Reviewed-by: Jose Rivera <German.Rivera@freescale.com>
2014-04-30powerpc/booke3e: Move tlb lock/unlock functionsMihai Caraman
Move book3e_tlb_lock/unlock functions from hugetlbpages to mm to be used from other kernel places. Signed-off-by: Mihai Caraman <mihai.caraman@freescale.com> (cherry picked and merged from sdk1.5 commit c84bbd80aebb40de4fcc7894759dfff8857d405c) Change-Id: I89239824880e81c8257fe612cad903eebbb5adbe Reviewed-on: http://git.am.freescale.net:8181/11559 Tested-by: Review Code-CDREVIEW <CDREVIEW@freescale.com> Reviewed-by: Stuart Yoder <stuart.yoder@freescale.com> Reviewed-by: Jose Rivera <German.Rivera@freescale.com>
2014-04-30powerpc/booke64: Add LRAT next and max entries to tlb_per_core structureMihai Caraman
LRAT (Logical to Real Address Translation) is shared between hw threads. Add LRAT next and max entries to tlb_per_core data structure and initialize them. Signed-off-by: Mihai Caraman <mihai.caraman@freescale.com> (cherry picked and merged from sdk1.5 commit aa10cefcc1588338b3a80e842bc4db351dcec176) Change-Id: If229acd9f4ae28fb49ce42132831d720bd436b84 Reviewed-on: http://git.am.freescale.net:8181/11558 Tested-by: Review Code-CDREVIEW <CDREVIEW@freescale.com> Reviewed-by: Stuart Yoder <stuart.yoder@freescale.com> Reviewed-by: Jose Rivera <German.Rivera@freescale.com>
2014-04-30powerpc/booke64: Add LRAT error exception handlerMihai Caraman
Add LRAT (Logical to Real Address Translation) error exception handler to Book3E 64-bit kernel. Signed-off-by: Mihai Caraman <mihai.caraman@freescale.com> (cherry picked and merged from sdk1.5 commit 70fdc82f73e5330acd9bb978029004c88a754d4e) Change-Id: I0cb34c4b9ebec350ddf46e94876c099c9a8b2c7c Reviewed-on: http://git.am.freescale.net:8181/11557 Tested-by: Review Code-CDREVIEW <CDREVIEW@freescale.com> Reviewed-by: Stuart Yoder <stuart.yoder@freescale.com> Reviewed-by: Jose Rivera <German.Rivera@freescale.com>
2014-04-29powerpc/cpu-hotplug: fix cpu re-online failed issueWang Dongsheng
Errata-A-006568. If SOC-rcpm is V1, we need enable cpu first, T4240rev2 and later Soc has been fixed. But before, this errata is still needed. Tested on P4080ds, T1042rdb_pi, T4240qds, B4860qds. root@p4080ds:/usr/etc# echo 0 > /sys/devices/system/cpu/cpu7/online Cannot set affinity for irq 467 root@p4080ds:/usr/etc# root@p4080ds:/usr/etc# echo 1 > /sys/devices/system/cpu/cpu7/online smp_85xx_kick_cpu: timeout waiting for core 7 to reset smp: failed starting cpu 7 (rc -2) Signed-off-by: Wang Dongsheng <dongsheng.wang@freescale.com> Signed-off-by: Chenhui Zhao <chenhui.zhao@freescale.com> Reviewed-on: http://git.am.freescale.net:8181/11356 Tested-by: Review Code-CDREVIEW <CDREVIEW@freescale.com> Reviewed-by: Yang Li <LeoLi@freescale.com> Reviewed-by: Jose Rivera <German.Rivera@freescale.com> Change-Id: Ib300dffe28b2436fe44431286ff707124402204d Reviewed-on: http://git.am.freescale.net:8181/11648
2014-04-29fsl/pci: The new pci suspend/resume implementationWang Dongsheng
If we do nothing in suspend/resume, some platform PCIe ip-block can't guarantee the link back to L0 state from sleep, then, when we read the EP device will hang. Only we send pme turnoff message in pci controller suspend, and send pme exit message in resume, the link state will be normal. When we send pme turnoff message in pci controller suspend, the links will into l2/l3 ready, then, host cannot communicate with ep device, but pci-driver will call back EP device to save them state. So we need to change platform_driver->suspend/resume to syscore->suspend/resume. So the new suspend/resume implementation, send pme turnoff message in suspend, and send pme exit message in resume. And add a PME handler, to response PME & message interrupt. Change platform_driver->suspend/resume to syscore->suspend/resume. pci-driver will call back EP device, to save EP state in pci_pm_suspend_noirq, so we need to keep the link, until pci_pm_suspend_noirq finish. Signed-off-by: Wang Dongsheng <dongsheng.wang@freescale.com> Change-Id: Id82d2e92994e466de1b2a4eb9ecef73c112ec753 Reviewed-on: http://git.am.freescale.net:8181/11538 Tested-by: Review Code-CDREVIEW <CDREVIEW@freescale.com> Reviewed-by: Yang Li <LeoLi@freescale.com> Reviewed-by: Jose Rivera <German.Rivera@freescale.com>
2014-04-29p1022/pci: through PIXIS to reset pci slot when DIU enableWang Dongsheng
Add indirect_access_pixis_reset_pcie_slot & direct_access_pixis_reset_pcie_slot into p1022_ds.c. When the DIU enable, we through the way of indirect access to read/write pixis register. Signed-off-by: Wang Dongsheng <dongsheng.wang@freescale.com> Change-Id: I7ccc3d7db7f45630ce269c0f680eed726b2efd3a Reviewed-on: http://git.am.freescale.net:8181/11537 Tested-by: Review Code-CDREVIEW <CDREVIEW@freescale.com> Reviewed-by: Zhengxiong Jin <Jason.Jin@freescale.com> Reviewed-by: Yang Li <LeoLi@freescale.com> Reviewed-by: Jose Rivera <German.Rivera@freescale.com>
2014-04-29mpc85xx/lbc: modify suspend/resume entry sequenceWang Dongsheng
Modify platform driver suspend/resume to syscore suspend/resume. Because p1022ds need to use localbus when entering the PCIE resume. Signed-off-by: Wang Dongsheng <dongsheng.wang@freescale.com> Reviewed-on: http://git.am.freescale.net:8181/6992 Tested-by: Review Code-CDREVIEW <CDREVIEW@freescale.com> Reviewed-by: Tiefei Zang <roy.zang@freescale.com> Reviewed-by: Thomas Trefny <Tom.Trefny@freescale.com> Change-Id: Ib12831f0c7cd935765ec54f7306b8451212a8ecb Reviewed-on: http://git.am.freescale.net:8181/11536 Reviewed-by: Yang Li <LeoLi@freescale.com> Reviewed-by: Jose Rivera <German.Rivera@freescale.com>
2014-04-29fsl/diu: enable diu support for t1042rdb_pi boardWang Dongsheng
This patch add the DIU platform support for T1042RDB board. The hdmi port is verified on the board. Signed-off-by: Jason Jin <Jason.Jin@freescale.com> Signed-off-by: Wang Dongsheng <dongsheng.wang@freescale.com> Change-Id: I9642fe4112ecc33d89007d80347b40c3d42cc122 Reviewed-on: http://git.am.freescale.net:8181/11535 Tested-by: Review Code-CDREVIEW <CDREVIEW@freescale.com> Reviewed-by: Jose Rivera <German.Rivera@freescale.com>
2014-04-29defconfig: Enabled DIU as default configWang Dongsheng
Now we fix DIU initialization entry, we can add DIU into default config. We need to always enable DIU module. Because u-boot through FPGA startup DIU and kernel also need to handle FPGA in kernel. otherwise system cannot go to deep sleep state. Signed-off-by: Wang Dongsheng <dongsheng.wang@freescale.com> Reviewed-on: http://git.am.freescale.net:8181/11168 Tested-by: Review Code-CDREVIEW <CDREVIEW@freescale.com> Reviewed-by: Yang Li <LeoLi@freescale.com> Reviewed-by: Jose Rivera <German.Rivera@freescale.com> Change-Id: Ia9195c5185ee130e3105d5146d150eeaf08daef9 Reviewed-on: http://git.am.freescale.net:8181/11533 Reviewed-by: Zhengxiong Jin <Jason.Jin@freescale.com>
2014-04-29fsl/mpic_timer: make mpic_timer to support deep sleep featureWang Dongsheng
At T104x platfrom the timer clock will be changed from platform_clock to sys_ref_clock when system going to deep sleep. So before system going to deep sleep, we need to change time to adapt to the new frequency that is sys_ref_clock. And after resume from deep sleep, restore the time that based on platform_clock. Signed-off-by: Wang Dongsheng <dongsheng.wang@freescale.com> Change-Id: I15608aa39df70ab6ca28c8dbed3b0cbf6d71343e Reviewed-on: http://git.am.freescale.net:8181/11531 Tested-by: Review Code-CDREVIEW <CDREVIEW@freescale.com> Reviewed-by: Yang Li <LeoLi@freescale.com> Reviewed-by: Jose Rivera <German.Rivera@freescale.com>
2014-04-29fsl/pm: add api to get suspend state which is STANDBY or MEMWang Dongsheng
Add set_pm_suspend_state & pm_suspend_state functions to set/get suspend state. When system going to sleep or deep sleep, devices can get the system suspend state(STANDBY/MEM) through pm_suspend_state function and to handle different situations. Signed-off-by: Wang Dongsheng <dongsheng.wang@freescale.com> Change-Id: Ibd369079f6f0777854d88d7e1af21f455eaf909e Reviewed-on: http://git.am.freescale.net:8181/11530 Tested-by: Review Code-CDREVIEW <CDREVIEW@freescale.com> Reviewed-by: Yang Li <LeoLi@freescale.com> Reviewed-by: Jose Rivera <German.Rivera@freescale.com>
2014-04-29powerpc/deepsleep: set MPIC to the mixed mode to avoid deep sleep issueZhao Chenhui
The deep sleep does not wake consistently on T1040 and T1042 with the external proxy facility mode of MPIC (MPIC_ENABLE_COREINT), so use the mixed mode of MPIC. Set mpic_get_irq() to ppc_md.get_irq to enable the mixed mode. Change-Id: I5eee6a15c845fb994c39d74a4e8140a610caf5f9 Signed-off-by: Zhao Chenhui <chenhui.zhao@freescale.com> Reviewed-on: http://git.am.freescale.net:8181/11438 Reviewed-by: Yang Li <LeoLi@freescale.com> Tested-by: Review Code-CDREVIEW <CDREVIEW@freescale.com> Reviewed-by: Jose Rivera <German.Rivera@freescale.com>
2014-04-29powerpc/deepsleep: Disable CPC speculation to avoid deep sleep hangChenhui Zhao
Disable CPC speculation to avoid deep sleep hang, especially in secure boot mode. This bit will be cleared automatically when resuming from deep sleep. Change-Id: I2e4debed63eed39fa059c42de5b7f49b5d6c48f3 Signed-off-by: Chenhui Zhao <chenhui.zhao@freescale.com> Reviewed-on: http://git.am.freescale.net:8181/11362 Tested-by: Review Code-CDREVIEW <CDREVIEW@freescale.com> Reviewed-by: Dongsheng Wang <dongsheng.wang@freescale.com> Reviewed-by: Yang Li <LeoLi@freescale.com> Reviewed-by: Jose Rivera <German.Rivera@freescale.com>
2014-04-25Enable magic SysRq key for P1023 family boardsBogdan Purcareata
This enables certain investigation facilities when the system is stuck. The option is present for P4 boards (corenet32_smp_defconfig) and T4 boards (85xx/e6500rev2_defconfig). In particular, LXC containers use it by default. Change-Id: Ie119c16fcf6f5702477b3866b65d5876d17ba5ed Signed-off-by: Bogdan Purcareata <bogdan.purcareata@freescale.com> Reviewed-on: http://git.am.freescale.net:8181/11375 Reviewed-by: Mihai Claudiu Caraman <mihai.caraman@freescale.com> Tested-by: Review Code-CDREVIEW <CDREVIEW@freescale.com> Reviewed-by: Jose Rivera <German.Rivera@freescale.com>
2014-04-25t1040rdb: Add usdpaa device tree and usdpaa sharedSandeep Singh
interface device tree. Signed-off-by: Sandeep Singh <sandeep@freescale.com> Change-Id: I5b1221cc99b58453a053db30647e93b9f16d92f3 Reviewed-on: http://git.am.freescale.net:8181/8997 Tested-by: Review Code-CDREVIEW <CDREVIEW@freescale.com> Reviewed-by: Vakul Garg <vakul@freescale.com> Reviewed-by: Jose Rivera <German.Rivera@freescale.com> (cherry picked from commit 3253b362d4b02d50efa1be47c4402904d44c8a34) Reviewed-on: http://git.am.freescale.net:8181/11210
2014-04-18Merge branch 'master-tmp' into sdk-v1.6.xScott Wood
master-tmp is the master branch as of 8b60f5ea90c49344692a70f62cd4aa349de38b48 with the following commits reverted due to excessive conflicts: commit b35a69559c46e066e6f24bb02d5a6090483786e3 Author: Scott Wood <scottwood@freescale.com> Date: Fri Apr 18 15:27:52 2014 -0500 Revert "net: add sysfs helpers for netdev_adjacent logic" This reverts commit 0be682ca768d671c91cfd1379759efcb3b29102a. commit 1c0dc06e47e11bf758f3e84ea90c2178a31dbf0f Author: Scott Wood <scottwood@freescale.com> Date: Fri Apr 18 15:27:47 2014 -0500 Revert "net: rename sysfs symlinks on device name change" This reverts commit 45ce45c69750b93b8262aa66792185bd49150293. Conflicts: drivers/iommu/fsl_pamu.c drivers/net/bonding/bond_3ad.c drivers/net/bonding/bond_sysfs.c drivers/net/bonding/bonding.h drivers/net/ethernet/freescale/gianfar.c Signed-off-by: Scott Wood <scottwood@freescale.com> Conflicts: drivers/iommu/fsl_pamu.c drivers/net/bonding/bond_3ad.c drivers/net/bonding/bond_sysfs.c drivers/net/bonding/bonding.h drivers/net/ethernet/freescale/gianfar.c
2014-04-18powerpc/kvm/booke: Fix build break due to stack frame size warningMihai Caraman
Commit ce11e48b7fdd256ec68b932a89b397a790566031 ("KVM: PPC: E500: Add userspace debug stub support") added "struct thread_struct" to the stack of kvmppc_vcpu_run(). thread_struct is 1152 bytes on my build, compared to 48 bytes for the recently-introduced "struct debug_reg". Use the latter instead. This fixes the following error: cc1: warnings being treated as errors arch/powerpc/kvm/booke.c: In function 'kvmppc_vcpu_run': arch/powerpc/kvm/booke.c:760:1: error: the frame size of 1424 bytes is larger than 1024 bytes make[2]: *** [arch/powerpc/kvm/booke.o] Error 1 make[1]: *** [arch/powerpc/kvm] Error 2 make[1]: *** Waiting for unfinished jobs.... Signed-off-by: Scott Wood <scottwood@freescale.com> (cherry picked and merged from upstream commit f5f972102d5c12729f0a35fce266b580aaa03f66) Change-Id: Iaa6996949b07b5f38e9c443071fcb38d71f05a94 Reviewed-on: http://git.am.freescale.net:8181/11191 Tested-by: Review Code-CDREVIEW <CDREVIEW@freescale.com>
2014-04-18crypto: ghash-clmulni-intel - use C implementation for setkey()Ard Biesheuvel
commit 8ceee72808d1ae3fb191284afc2257a2be964725 upstream. The GHASH setkey() function uses SSE registers but fails to call kernel_fpu_begin()/kernel_fpu_end(). Instead of adding these calls, and then having to deal with the restriction that they cannot be called from interrupt context, move the setkey() implementation to the C domain. Note that setkey() does not use any particular SSE features and is not expected to become a performance bottleneck. Signed-off-by: Ard Biesheuvel <ard.biesheuvel@linaro.org> Acked-by: H. Peter Anvin <hpa@linux.intel.com> Fixes: 0e1227d356e9b (crypto: ghash - Add PCLMULQDQ accelerated implementation) Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au> Signed-off-by: Jiri Slaby <jslaby@suse.cz>
2014-04-18ARC: [nsimosci] Unbork consoleVineet Gupta
commit 61fb4bfc010b0d2940f7fd87acbce6a0f03217cb upstream. Despite the switch to right UART driver (prev patch), serial console still doesn't work due to missing CONFIG_SERIAL_OF_PLATFORM Also fix the default cmdline in DT to not refer to out-of-tree ARC framebuffer driver for console. Signed-off-by: Vineet Gupta <vgupta@synopsys.com> Cc: Francois Bedard <Francois.Bedard@synopsys.com> Signed-off-by: Jiri Slaby <jslaby@suse.cz>
2014-04-18ARC: [nsimosci] Change .dts to use generic 8250 UARTMischa Jonker
commit 6eda477b3c54b8236868c8784e5e042ff14244f0 upstream. The Synopsys APB DW UART has a couple of special features that are not in the System C model. In 3.8, the 8250_dw driver didn't really use these features, but from 3.9 onwards, the 8250_dw driver has become incompatible with our model. Signed-off-by: Mischa Jonker <mjonker@synopsys.com> Signed-off-by: Vineet Gupta <vgupta@synopsys.com> Cc: Francois Bedard <Francois.Bedard@synopsys.com> Signed-off-by: Jiri Slaby <jslaby@suse.cz>
2014-04-15t4240rdb/dts: Add usdpaa device treeSandeep Singh
- 48G configuration (4x10G + 8x1G) for USDPAA. - Also add device tree for shared MAC and macless interface Signed-off-by: Sandeep Singh <sandeep@freescale.com> Change-Id: Iceb48f0e8a1c0d429119064d9bb02d1678320902 Reviewed-on: http://git.am.freescale.net:8181/11002 Tested-by: Review Code-CDREVIEW <CDREVIEW@freescale.com> Reviewed-by: Vakul Garg <vakul@freescale.com> Reviewed-by: Jose Rivera <German.Rivera@freescale.com>
2014-04-15t2080rdb/dts: Add usdpaa device treeSandeep Singh
- 42G configuration (4x10G + 2x1G) for USDPAA. - Also add device tree for shared MAC and macless interface Signed-off-by: Sandeep Singh <sandeep@freescale.com> Change-Id: I6e2fc18f13cea9d71dcaf777d017c119afe77b7c Reviewed-on: http://git.am.freescale.net:8181/11001 Tested-by: Review Code-CDREVIEW <CDREVIEW@freescale.com> Reviewed-by: Vakul Garg <vakul@freescale.com> Reviewed-by: Jose Rivera <German.Rivera@freescale.com>
2014-04-15T1040RDB: Fix: Add L2 switch support and device tree bindingsStefan Sicleru
Added port indexes and compatible strings for each port and for the L2 switch node itself. Added L2 switch device tree binding. Signed-off-by: Stefan Sicleru <stefan.sicleru@freescale.com> Change-Id: I0d1383fbde82698bf6bdbbf275dadd7768bf0f8d Reviewed-on: http://git.am.freescale.net:8181/10978 Tested-by: Review Code-CDREVIEW <CDREVIEW@freescale.com> Reviewed-by: Razvan Stefanescu <razvan.stefanescu@freescale.com> Reviewed-by: Codrin Constantin Ciubotariu <codrin.ciubotariu@freescale.com> Reviewed-by: Jose Rivera <German.Rivera@freescale.com>
2014-04-14QE: Add "ifdef CONFIG_QUICC_ENGINE" for qeZhao Qiang
qe and qe_ic shouldn't be initialized when QUICC_ENGINE is not selected. Signed-off-by: Zhao Qiang <B45475@freescale.com> Change-Id: If9b1b22499dade52ebc0727b6c0ec923f520cdd1 Reviewed-on: http://git.am.freescale.net:8181/10936 Tested-by: Review Code-CDREVIEW <CDREVIEW@freescale.com> Reviewed-by: Xiaobo Xie <X.Xie@freescale.com> Reviewed-by: Jose Rivera <German.Rivera@freescale.com>
2014-04-14qe: remove duplicated qe node in t1040si-post.dtsiZhao Qiang
qe node was duplicated in t1040si-post.dtsi, remove one of them. Signed-off-by: Zhao Qiang <B45475@freescale.com> Change-Id: Ie701cd3f6a2f068b6ba610adc4aeced926dcc168 Reviewed-on: http://git.am.freescale.net:8181/10897 Tested-by: Review Code-CDREVIEW <CDREVIEW@freescale.com> Reviewed-by: Xiaobo Xie <X.Xie@freescale.com> Reviewed-by: Jose Rivera <German.Rivera@freescale.com>
2014-04-14QE: add PPC64 for QE's dependencesZhao Qiang
PPC64 can also support qe. Signed-off-by: Zhao Qiang <B45475@freescale.com> Change-Id: Iaa88d2886b40e30932aec6b2bd55de68d464fd5f Reviewed-on: http://git.am.freescale.net:8181/10935 Tested-by: Review Code-CDREVIEW <CDREVIEW@freescale.com> Reviewed-by: Xiaobo Xie <X.Xie@freescale.com> Reviewed-by: Jose Rivera <German.Rivera@freescale.com>
2014-04-14powerpc/85xx: Add T4240RDB board supportChunhe Lan
T4240RDB board Specification ---------------------------- Memory subsystem: 6GB DDR3 128MB NOR flash 2GB NAND flash Ethernet: Eight 1G SGMII ports Four 10Gbps SFP+ ports PCIe: Two PCIe slots USB: Two USB2.0 Type A ports SDHC: One SD-card port SATA: One SATA port UART: Dual RJ45 ports Signed-off-by: Chunhe Lan <Chunhe.Lan@freescale.com> Change-Id: I769d39c25a49508088219fd5a9b27003421b6569 Reviewed-on: http://git.am.freescale.net:8181/10386 Tested-by: Review Code-CDREVIEW <CDREVIEW@freescale.com> Reviewed-by: Tiefei Zang <tie-fei.zang@freescale.com> Reviewed-by: Jose Rivera <German.Rivera@freescale.com>
2014-04-13m68k: Skip futex_atomic_cmpxchg_inatomic() testFinn Thain
commit e571c58f313d35c56e0018470e3375ddd1fd320e upstream. Skip the futex_atomic_cmpxchg_inatomic() test in futex_init(). It causes a fatal exception on 68030 (and presumably 68020 also). Signed-off-by: Finn Thain <fthain@telegraphics.com.au> Acked-by: Geert Uytterhoeven <geert@linux-m68k.org> Link: http://lkml.kernel.org/r/alpine.LNX.2.00.1403061006440.5525@nippy.intranet Signed-off-by: Thomas Gleixner <tglx@linutronix.de> Signed-off-by: Jiri Slaby <jslaby@suse.cz>
2014-04-13futex: Allow architectures to skip futex_atomic_cmpxchg_inatomic() testHeiko Carstens
commit 03b8c7b623c80af264c4c8d6111e5c6289933666 upstream. If an architecture has futex_atomic_cmpxchg_inatomic() implemented and there is no runtime check necessary, allow to skip the test within futex_init(). This allows to get rid of some code which would always give the same result, and also allows the compiler to optimize a couple of if statements away. Signed-off-by: Heiko Carstens <heiko.carstens@de.ibm.com> Cc: Finn Thain <fthain@telegraphics.com.au> Cc: Geert Uytterhoeven <geert@linux-m68k.org> Link: http://lkml.kernel.org/r/20140302120947.GA3641@osiris Signed-off-by: Thomas Gleixner <tglx@linutronix.de> [geert: Backported to v3.10..v3.13] Signed-off-by: Geert Uytterhoeven <geert@linux-m68k.org> Signed-off-by: Jiri Slaby <jslaby@suse.cz>
2014-04-11powerpc/t1040/dts: Enable oh port5 to support LAGJianhua Xie
Enable one offline port5 with a buffer pool to support HW based LAG for T1040QDS/RDB. The dts codes are borrowed from other USDPAA dts file. Change-Id: Ifc67f8a9fc8e5fadfe59d76bc54532c9f3f99586 Signed-off-by: Jianhua Xie <jianhua.xie@freescale.com> Reviewed-by: Mandy Lavi <Mandy.Lavi@freescale.com> Reviewed-on: http://git.am.freescale.net:8181/10416 Tested-by: Review Code-CDREVIEW <CDREVIEW@freescale.com> Reviewed-by: Jiafei Pan <Jiafei.Pan@freescale.com> Reviewed-by: Jose Rivera <German.Rivera@freescale.com>
2014-04-10Merge branch 'sdk-kernel-3.12' into sdk-v1.6.xScott Wood
2014-04-10KVM: PPC: Fix 3.12 mismergeScott Wood
Signed-off-by: Scott Wood <scottwood@freescale.com>
2014-04-10powerpc: Don't corrupt user registers on 32-bitPaul Mackerras
Commit de79f7b9f6 ("powerpc: Put FP/VSX and VR state into structures") modified load_up_fpu() and load_up_altivec() in such a way that they now use r7 and r8. Unfortunately, the callers of these functions on 32-bit machines then return to userspace via fast_exception_return, which doesn't restore all of the volatile GPRs, but only r1, r3 -- r6 and r9 -- r12. This was causing userspace segfaults and other userspace misbehaviour on 32-bit machines. This fixes the problem by changing the register usage of load_up_fpu() and load_up_altivec() to avoid using r7 and r8 and instead use r6 and r10. This also adds comments to those functions saying which registers may be used. Signed-off-by: Paul Mackerras <paulus@samba.org> Tested-by: Scott Wood <scottwood@freescale.com> (on e500mc, so no altivec) Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org> (cherry picked from commit 955c1cab809edfb5429603c68493363074ac20cf)