aboutsummaryrefslogtreecommitdiffstats
path: root/arch
Commit message (Collapse)AuthorAge
...
* ARM: 7669/1: keep __my_cpu_offset consistent with generic oneMing Lei2014-04-16
| | | | | | | | | | | | | | | | | | | | | Commit 14318efb(ARM: 7587/1: implement optimized percpu variable access) introduces arm's __my_cpu_offset to optimize percpu vaiable access, which really works well on hackbench, but will cause __my_cpu_offset to return garbage value before it is initialized in cpu_init() called by setup_arch, so accessing percpu variable before setup_arch may cause kernel hang. But generic __my_cpu_offset always returns zero before percpu area is brought up, and won't hang kernel. So the patch tries to clear __my_cpu_offset on boot CPU early to avoid boot hang. At least now percpu variable is accessed by lockdep before setup_arch(), and enabling CONFIG_LOCK_STAT or CONFIG_DEBUG_LOCKDEP can trigger kernel hang. Signed-off-by: Ming Lei <tom.leiming@gmail.com> Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk> (cherry picked from commit 9394c1c65e61eb6f4c1c99f342b49e451ec337b6)
* ENGR00300157: ARM: dts: imx6sl-evk-common: correct the pad setting of ↵Robin Gong2014-04-16
| | | | | | | | | EPDC_PWRCTRL3 align with the same setting with v3.0.35, otherwise, cause 'POR' reset if EPDC daughter board attached sometimes. Signed-off-by: Robin Gong <b38343@freescale.com>
* ARM: 7811/1: locks: use early clobber in arch_spin_trylockWill Deacon2014-04-16
| | | | | | | | | | | | | commit afa31d8eb86fc2f25083e675d57ac8173a98f999 upstream. The res variable is written before we've finished with the input operands (namely the lock address), so ensure that we mark it as `early clobber' to avoid unintended register sharing. Signed-off-by: Will Deacon <will.deacon@arm.com> Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk> Cc: Wang Weidong <wangweidong1@huawei.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
* ARM: 7812/1: rwlocks: retry trylock operation if strex fails on free lockWill Deacon2014-04-16
| | | | | | | | | | | | | | | | commit 00efaa0250939dc148e2d3104fb3c18395d24a2d upstream. Commit 15e7e5c1ebf5 ("ARM: 7749/1: spinlock: retry trylock operation if strex fails on free lock") modifying our arch_spin_trylock to retry the acquisition if the lock appeared uncontended, but the strex failed. This patch does the same for rwlocks, which were missed by the original patch. Signed-off-by: Will Deacon <will.deacon@arm.com> Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk> Cc: Li Zefan <lizefan@huawei.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
* ARM: 7749/1: spinlock: retry trylock operation if strex fails on free lockWill Deacon2014-04-16
| | | | | | | | | | | | | | | | commit 15e7e5c1ebf556cd620c9b091e121091ac760f6d upstream. An exclusive store instruction may fail for reasons other than lock contention (e.g. a cache eviction during the critical section) so, in line with other architectures using similar exclusive instructions (alpha, mips, powerpc), retry the trylock operation if the lock appears to be free but the strex reported failure. Reported-by: Tony Thompson <anthony.thompson@arm.com> Signed-off-by: Will Deacon <will.deacon@arm.com> Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk> Cc: Li Zefan <lizefan@huawei.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
* ARM: 7957/1: add DSB after icache flush in __flush_icache_all()Vinayak Kale2014-04-16
| | | | | | | | | | | commit 39544ac9df20f73e49fc6b9ac19ff533388c82c0 upstream. Add DSB after icache flush to complete the cache maintenance operation. Signed-off-by: Vinayak Kale <vkale@apm.com> Acked-by: Catalin Marinas <catalin.marinas@arm.com> Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
* ARM: 7953/1: mm: ensure TLB invalidation is complete before enabling MMUWill Deacon2014-04-16
| | | | | | | | | | | | | | | | | | | commit bae0ca2bc550d1ec6a118fb8f2696f18c4da3d8e upstream. During __v{6,7}_setup, we invalidate the TLBs since we are about to enable the MMU on return to head.S. Unfortunately, without a subsequent dsb instruction, the invalidation is not guaranteed to have completed by the time we write to the sctlr, potentially exposing us to junk/stale translations cached in the TLB. This patch reworks the init functions so that the dsb used to ensure completion of cache/predictor maintenance is also used to ensure completion of the TLB invalidation. Reported-by: Albin Tonnerre <Albin.Tonnerre@arm.com> Signed-off-by: Will Deacon <will.deacon@arm.com> Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
* ENGR00306165: ARM: dts: imx6q/dl: Modify the mag3110 interrupt flagLuwei Zhou2014-04-16
| | | | | | This patch modify the sensor mag3110 interrupt flag to rising edege. Signed-off-by: Luwei Zhou <b45643@freescale.com>
* ENGR00306133-2: ARM: dts: imx6sx-sdb: Add isl29023 dts supportLuwei Zhou2014-04-16
| | | | | | | This patch add isl29023 sensor device tree support on i.MX6SX-SDB platform. Signed-off-by: Luwei Zhou <b45643@freescale.com>
* ENGR00306134-2: ARM: dts: imx6sx-sdb: Add mag3110 dts supportLuwei Zhou2014-04-16
| | | | | | | This patch add mag3110 sensor device tree support on i.MX6SX-SDB platform. Signed-off-by: Luwei Zhou <b45643@freescale.com>
* ENGR00303701-3 ARM: clk: imx6sx: use the 132MHz for the WEIMHuang Shijie2014-04-16
| | | | | | We set the maximum clock frequency for the WEIM module. Signed-off-by: Huang Shijie <b32955@freescale.com>
* ENGR00303701-2 ARM: dts: imx6sx-19x19-arm2: enable the WEIMHuang Shijie2014-04-16
| | | | | | enable the 32MB parallel NOR flash. Signed-off-by: Huang Shijie <b32955@freescale.com>
* ENGR00303701-1 ARM: dts: imx6sx: add WEIM supportHuang Shijie2014-04-16
| | | | | | Add the WEIM node and the pinctrl. Signed-off-by: Huang Shijie <b32955@freescale.com>
* ENGR00306309 ARM:imx:imx6qdl: Fix procedure to switch the parent of LDB_DI_CLKRanjani Vaidyanathan2014-04-16
| | | | | | | | | | | | | | | Due to incorrect placement of the clock gate cell in the ldb_di[x]_clk tree, the glitchy parent mux of ldb_di[x]_clk can cause a glitch to enter the ldb_di_ipu_div divider. If the divider gets locked up, no ldb_di[x]_clk is generated, and the LVDS display will hang when the ipu_di_clk is sourced from ldb_di_clk. To fix the problem, both the new and current parent of the ldb_di_clk should be disabled before the switch. This patch ensures that correct steps are followed when ldb_di_clk parent is switched in the beginning of boot. Signed-off-by: Ranjani Vaidyanathan <Ranjani.Vaidyanathan@freescale.com> Signed-off-by: Fabio Estevam <fabio.estevam@freescale.com>
* ENGR00306442-2 ARM: imx6sx: Fix audio noise during monaural audio playbackNicolin Chen2014-04-16
| | | | | | | | | | We should disable the pull up/down bit to the tx data pin as the pulling operation would cause I2S signal distortion. Thus this patches dropped the pull up/down bit of TXC pad and the useless 0x40000 bit from all of pads in the group. Signed-off-by: Nicolin Chen <Guangyu.Chen@freescale.com>
* ENGR00306442-1 ARM: imx6sx: Merge SPDIF and AUDIO clocks into one gate clockNicolin Chen2014-04-16
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | On Solo X, SPDIF and AUDIO clocks shares one single gate to switch two entirely different clock routes: SPDIF <-- <---- SPDIF_PODF ----.... \ / gate1 / \ AUDIO <-- <---- AUDIO_PODF ----.... The two audio modules would easily cause conflict during clock operations if running in the same time: SPDIF <-- gate1 <---- SPDIF_PODF ----.... AUDIO <-- gate1 <---- AUDIO_PODF ----.... To keep them safe, we here have to merge them into one gate clock and limit their rates and parent identical: <---- SPDIF_PODF ----.... / SPDIF, AUDIO <-- gate1 \ <---- AUDIO_PODF ----.... [ The only disadvantage of this modification is that we can not separately set a different clock rates and clock sources to SPDIF and AUDIO clock. ] Signed-off-by: Nicolin Chen <Guangyu.Chen@freescale.com>
* ENGR00305648-7 ARM: dts: Add ESAI and SAI(Disabled) for imx6sx-19x19-arm2 boardNicolin Chen2014-04-16
| | | | | | | | This patch adds nodes for ESAI and SAI for imx6sx-19x19-arm2 board and enables ESAI only due to pin conflict. Acked-by: Wang Shengjiu <b02247@freescale.com> Signed-off-by: Nicolin Chen <Guangyu.Chen@freescale.com>
* ENGR00305648-5 ARM: imx6sx: set Audio clocks to 24.576MHzNicolin Chen2014-04-16
| | | | | | | | | This patch sets a default clock 24.576MHz for ESAI clock and swtich the source of external AUDIO clock from pll4 to pll3 since 24.0Mhz would be more likely recommanded than 24.576MHz to WM8962 audio codec. Acked-by: Wang Shengjiu <b02247@freescale.com> Signed-off-by: Nicolin Chen <Guangyu.Chen@freescale.com>
* ENGR00305648-4 ARM: imx6sx: Add SPDIF support to 19x19 arm2 boardNicolin Chen2014-04-16
| | | | | | | | Add SPDIF support to 19x19 arm2 board and create a new dts for it due to pin conflict. Acked-by: Wang Shengjiu <b02247@freescale.com> Signed-off-by: Nicolin Chen <Guangyu.Chen@freescale.com>
* ENGR00305648-3 ARM: imx6sx: Add audio nodes to dtsiNicolin Chen2014-04-16
| | | | | | | This patch adds SPDIF SAI ASRC_P2P and ESAI support to imx6sx.dtsi Acked-by: Wang Shengjiu <b02247@freescale.com> Signed-off-by: Nicolin Chen <Guangyu.Chen@freescale.com>
* ENGR00305648-2 ARM: imx6sx: Add SAI ipg clock to the clock treeNicolin Chen2014-04-16
| | | | | | | There's one clock for SAI memory access missing in the clock tree. Thus add it. Acked-by: Wang Shengjiu <b02247@freescale.com> Signed-off-by: Nicolin Chen <Guangyu.Chen@freescale.com>
* ENGR00305648-1 ASoC: imx-sgtl5000: Support non-ssi cpu-daiNicolin Chen2014-04-16
| | | | | | | | | | The current imx-sgtl5000 driver always attaches the cpu-dai to ssi while in fact it could be attached to other cpu-dais like SAI. Thus this patch use a general code to support another cpu-dai. And meanwhile update the devicetree for i.MX6 Series. Acked-by: Wang Shengjiu <b02247@freescale.com> Signed-off-by: Nicolin Chen <Guangyu.Chen@freescale.com>
* ENGR00306276: iMX6: Add workaround for ARM errata 761320 and 794072Nitin Garg2014-04-16
| | | | | | These are Category B, hence workaround is essential. Signed-off-by: Nitin Garg <nitin.garg@freescale.com>
* ENGR00306156 ARM: dts: imx6sx-sdb: add gpio key supportAnson Huang2014-04-16
| | | | | | | | | Add GPIO key support on i.MX6SX-SDB, see below mapping: KEY_FUNC1 -> KEY_VOLUMEUP; KEY_FUNC2 -> KEY_VOLUMEDOWN; Signed-off-by: Anson Huang <b20788@freescale.com>
* ENGR00306171 ARM: imx6x: fix imx6_enet_mac_init() function build warningFugang Duan2014-04-16
| | | | | | | | | | | | | Use compiler 4.4.4-glibc-2.11.1-multilib-1.0 build kernel, there have build warning: arch/arm/mach-imx/mach-imx6q.c:240: warning: 'macaddr_high' may be used uninitialized in this function arch/arm/mach-imx/mach-imx6q.c:240: warning: 'macaddr1_high' may be used uninitialized in this function For 4.7/4.8 compiler build, no warning report. The patch just to avoid the build warning. Signed-off-by: Fugang Duan <B38611@freescale.com>
* ENGR00306137 ARM: imx_v7_defconfig: enable 802.2 LLCFugang Duan2014-04-16
| | | | | | Enable IEEE 802.2 LLC protocol. Signed-off-by: Fugang Duan <B38611@freescale.com>
* ENGR00305598-4 ARM: dts: imx6sx: add new DTS file to enable LCDIF1Robby Cai2014-04-16
| | | | | | Due to the CSI and LCDIF1 shares the same pin MX6SX_PAD_LCD1_ENABLE. Signed-off-by: Robby Cai <R63905@freescale.com>
* ENGR00305598-3 ARM: dts: imx6sx: add csi and v4l2 capture supportRobby Cai2014-04-16
| | | | | | | | Add csi camera support and csi v4l2 capture support on i.MX6SX 19x19 ARM2 board. Since MX6SX_PAD_LCD1_ENABLE pin is shared between CSI and LCDIF1. LCDIF1 is disabled by default. Signed-off-by: Robby Cai <R63905@freescale.com>
* ENGR00305598-2 ARM: dts: imx6sx: Add ov5640 camera support on imx6sx-19x19-arm2Robby Cai2014-04-16
| | | | | | | Add ov5640 camera support on i.MX6SX 19x19 ARM2 board. Add new pin group for CSI to reflect the change on this board. Signed-off-by: Robby Cai <R63905@freescale.com>
* ENGR00305598-1 ARM: dts: imx6sx-19x19-arm2: Add new pin control group for I2C2Robby Cai2014-04-16
| | | | | | | On i.MX6SX 19x19 ARM2 board, two different PINs are used. This patch reflects this change. Signed-off-by: Robby Cai <R63905@freescale.com>
* ENGR00305549 ARM: imx6sx-sdb: enable USB functionPeter Chen2014-04-16
| | | | | | | usbotg1 is for dual-role function, usbotg2 is dedicated to host function. Signed-off-by: Peter Chen <peter.chen@freescale.com>
* ENGR00305106-3 ARM: dts: imx6sx-sdb: enable the uart5Huang Shijie2014-04-16
| | | | | | enable the uart5 for Bluetooth. Signed-off-by: Huang Shijie <b32955@freescale.com>
* ENGR00305106-2 ARM: dts: imx6sx: add a pinctrl for uart5Huang Shijie2014-04-16
| | | | | | This pinctrl is used by the imx6sx-sdb board. Signed-off-by: Huang Shijie <b32955@freescale.com>
* ENGR00305106-1 ARM: dts: imx6sx: add more UART nodesHuang Shijie2014-04-16
| | | | | | Add uart3 ~ uart5 DT nodes which are supported by the imx6sx. Signed-off-by: Huang Shijie <b32955@freescale.com>
* ENGR00305362 ARM: dts: imx6sx: Add gpio for wm8962 headphone detectionShengjiu Wang2014-04-16
| | | | | | update devicetree for wm8962 headphone detection. Signed-off-by: Shengjiu Wang <b02247@freescale.com>
* ENGR00305067-10 ARM: dts: imx6sx-sdb: Support Hannstar CABCLiu Ying2014-04-16
| | | | | | | | | This patch adds a device tree node for the Hannstar CABC function. We currently disable the CABC feature since it makes a panel's backlight unstable when display content varies considerably from time to time. Signed-off-by: Liu Ying <Ying.Liu@freescale.com>
* ENGR00305067-9 ARM: dts: imx6sx-sdb: Add pwm4 backlight supportLiu Ying2014-04-16
| | | | | | This patch adds pwm4 backlight support for the imx6sx-sdb platform. Signed-off-by: Liu Ying <Ying.Liu@freescale.com>
* ENGR00305067-8 ARM: dts: imx6sx-sdb: Specify backlight1's fb-namesLiu Ying2014-04-16
| | | | | | | | This patch specifies the devicetree node backlight1's property fb-names to be 'mxs-lcdif0' so that the pwm3 backlight device will only respond to this framebuffer's blank/unblank events. Signed-off-by: Liu Ying <Ying.Liu@freescale.com>
* ENGR00305067-7 ARM: dts: imx6sx-sdb: Rename pwm3 backlight nodeLiu Ying2014-04-16
| | | | | | | | This patch renames the backlight node based on pwm3 from 'backlight' to 'backlight1' so that we may add the upcoming backlight node based on pwm4 which is named to 'backlight2'. Signed-off-by: Liu Ying <Ying.Liu@freescale.com>
* ENGR00305067-6 ARM: dts: imx6sx-sdb: Add LVDS framebuffer supportLiu Ying2014-04-16
| | | | | | | | This patch adds LCDIF2 devicetree node and LDB devicetree node to the devicetree file imx6sx-sdb.dts so that the framebuffer based on LCDIF2/LVDS can be supported. Signed-off-by: Liu Ying <Ying.Liu@freescale.com>
* ENGR00305067-5 ARM: dts: imx6sx-sdb: Change LCDIF1 display node nameLiu Ying2014-04-16
| | | | | | | | This patch changes the display node name of LCDIF1 from 'display' to 'display0' so that we may add the upcoming display node of LCDIF2 which is named to 'display1'. Signed-off-by: Liu Ying <Ying.Liu@freescale.com>
* ENGR00305067-4 ARM: dtsi: imx6sx: Add LCDIF alias entriesLiu Ying2014-04-16
| | | | | | This patch adds alias entries for LCDIF1 and LCDIF2. Signed-off-by: Liu Ying <Ying.Liu@freescale.com>
* ENGR00300658-5 ARM: dts: imx6sx: Add clock device nodeRobby Cai2014-04-16
| | | | | | | on imx6sx need to enable display_axi, dcic and csi clock. display_axi, dcic is not needed on imx6sl. Signed-off-by: Robby Cai <R63905@freescale.com>
* ENGR00300658-3 ARM: dts: imx6sx: add camera ov5640 support on imx6sx-sdbRobby Cai2014-04-16
| | | | | | Add ov5640 camera support on imx6sx-sdb Signed-off-by: Robby Cai <R63905@freescale.com>
* ENGR00300658-2 ARM: dts: imx6sx: add csi and v4l2 capture support on imx6sx-sdbRobby Cai2014-04-16
| | | | | | | | | | | | | | Add CSI module and v4l2 capture support on imx6sx-sdb board Note1: CSI has pin conflict with LCDIF1 on imx6sx-sdb board. So camera connector(J13) and LCD expansion connector(J11) can not be used at the same time. As a result, a new DTS file for LCDIF1 is added. Note2: Camera connector(J13) can not be used without an adapter card (during manufacturing process so far) because footprint is mirrored on Sabre-SDB. This patch is to verify camera feature via LCD connector(J11). Signed-off-by: Robby Cai <R63905@freescale.com>
* ENGR00300658-1 clk: imx6sx: correct csi parent clockRobby Cai2014-04-16
| | | | | | correct csi parent clock Signed-off-by: Robby Cai <R63905@freescale.com>
* ENGR00304860-3 ARM: dts: imx6sx-17x17-arm: add the ECSPI4 DT nodeHuang Shijie2014-04-16
| | | | | | Since it has pin conflict with SD3, the default status is "disabled". Signed-off-by: Huang Shijie <b32955@freescale.com>
* ENGR00304860-2 ARM: dts: imx6sx: add pinctrl for ECSPI4Huang Shijie2014-04-16
| | | | | | | Add the pinctrl for ECSPI4. We use this pinctrl in the imx6sx-17x17-arm2 board. Signed-off-by: Huang Shijie <b32955@freescale.com>
* ENGR00304860-1 ARM: dts: imx6sx: add the DT nodes for ECSPIHuang Shijie2014-04-16
| | | | | | Add four DT nodes for ECSPI. Signed-off-by: Huang Shijie <b32955@freescale.com>
* ENGR00304676-2 ARM: dts: imx6sx: add new pcie regulator for gpcRobin Gong2014-04-16
| | | | | | | add new pcie regulator for gpc driver to install the right notify function. Signed-off-by: Robin Gong <b38343@freescale.com>