Commit 0a68c6bc authored by Kevin Hilman's avatar Kevin Hilman

Merge tag 'omap-for-v4.1/fixes-rc6' of...

Merge tag 'omap-for-v4.1/fixes-rc6' of git://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap into fixes

Merge omap fixes for v4.1, urgent fix to avoid potential hardware damage From Tony Lindgren:

Omap fixes for the -rc cycle, including a fix for potential hardware
breakage on BeagleBones:

- BeagleBones don't support RTC-only mode, it can cause hardware
  damage if system-power-controller is specified without
  ti,pmic-shutdown-controller

- Fix a recent regression to am3517 SoCs caused by the recent clock
  move that was not noticed until now despite automated boot
  testing

- Fix a regression for n900 touchscreen triggered by recent
  recent input changes

- Fix compatible property for dm816x USB to avoid errors with
  USB Ethernet

- Fix oops for omap3 when built with CONFIG_THUMB2_KERNEL

* tag 'omap-for-v4.1/fixes-rc6' of git://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap:
  ARM: dts: am335x-boneblack: disable RTC-only sleep to avoid hardware damage
  ARM: dts: AM35xx: fix system control module clocks
  ARM: dts: Fix n900 dts file to work around 4.1 touchscreen regression on n900
  ARM: dts: Fix dm816x to use right compatible flag for MUSB
  ARM: OMAP3: Fix booting with thumb2 kernel
parents 9947c34c 7a6cb0ab
...@@ -32,8 +32,8 @@ Example: ...@@ -32,8 +32,8 @@ Example:
touchscreen-fuzz-x = <4>; touchscreen-fuzz-x = <4>;
touchscreen-fuzz-y = <7>; touchscreen-fuzz-y = <7>;
touchscreen-fuzz-pressure = <2>; touchscreen-fuzz-pressure = <2>;
touchscreen-max-x = <4096>; touchscreen-size-x = <4096>;
touchscreen-max-y = <4096>; touchscreen-size-y = <4096>;
touchscreen-max-pressure = <2048>; touchscreen-max-pressure = <2048>;
ti,x-plate-ohms = <280>; ti,x-plate-ohms = <280>;
......
...@@ -223,6 +223,25 @@ tps: tps@24 { ...@@ -223,6 +223,25 @@ tps: tps@24 {
/include/ "tps65217.dtsi" /include/ "tps65217.dtsi"
&tps { &tps {
/*
* Configure pmic to enter OFF-state instead of SLEEP-state ("RTC-only
* mode") at poweroff. Most BeagleBone versions do not support RTC-only
* mode and risk hardware damage if this mode is entered.
*
* For details, see linux-omap mailing list May 2015 thread
* [PATCH] ARM: dts: am335x-bone* enable pmic-shutdown-controller
* In particular, messages:
* http://www.spinics.net/lists/linux-omap/msg118585.html
* http://www.spinics.net/lists/linux-omap/msg118615.html
*
* You can override this later with
* &tps { /delete-property/ ti,pmic-shutdown-controller; }
* if you want to use RTC-only mode and made sure you are not affected
* by the hardware problems. (Tip: double-check by performing a current
* measurement after shutdown: it should be less than 1 mA.)
*/
ti,pmic-shutdown-controller;
regulators { regulators {
dcdc1_reg: regulator@0 { dcdc1_reg: regulator@0 {
regulator-name = "vdds_dpr"; regulator-name = "vdds_dpr";
......
...@@ -12,7 +12,7 @@ emac_ick: emac_ick { ...@@ -12,7 +12,7 @@ emac_ick: emac_ick {
#clock-cells = <0>; #clock-cells = <0>;
compatible = "ti,am35xx-gate-clock"; compatible = "ti,am35xx-gate-clock";
clocks = <&ipss_ick>; clocks = <&ipss_ick>;
reg = <0x059c>; reg = <0x032c>;
ti,bit-shift = <1>; ti,bit-shift = <1>;
}; };
...@@ -20,7 +20,7 @@ emac_fck: emac_fck { ...@@ -20,7 +20,7 @@ emac_fck: emac_fck {
#clock-cells = <0>; #clock-cells = <0>;
compatible = "ti,gate-clock"; compatible = "ti,gate-clock";
clocks = <&rmii_ck>; clocks = <&rmii_ck>;
reg = <0x059c>; reg = <0x032c>;
ti,bit-shift = <9>; ti,bit-shift = <9>;
}; };
...@@ -28,7 +28,7 @@ vpfe_ick: vpfe_ick { ...@@ -28,7 +28,7 @@ vpfe_ick: vpfe_ick {
#clock-cells = <0>; #clock-cells = <0>;
compatible = "ti,am35xx-gate-clock"; compatible = "ti,am35xx-gate-clock";
clocks = <&ipss_ick>; clocks = <&ipss_ick>;
reg = <0x059c>; reg = <0x032c>;
ti,bit-shift = <2>; ti,bit-shift = <2>;
}; };
...@@ -36,7 +36,7 @@ vpfe_fck: vpfe_fck { ...@@ -36,7 +36,7 @@ vpfe_fck: vpfe_fck {
#clock-cells = <0>; #clock-cells = <0>;
compatible = "ti,gate-clock"; compatible = "ti,gate-clock";
clocks = <&pclk_ck>; clocks = <&pclk_ck>;
reg = <0x059c>; reg = <0x032c>;
ti,bit-shift = <10>; ti,bit-shift = <10>;
}; };
...@@ -44,7 +44,7 @@ hsotgusb_ick_am35xx: hsotgusb_ick_am35xx { ...@@ -44,7 +44,7 @@ hsotgusb_ick_am35xx: hsotgusb_ick_am35xx {
#clock-cells = <0>; #clock-cells = <0>;
compatible = "ti,am35xx-gate-clock"; compatible = "ti,am35xx-gate-clock";
clocks = <&ipss_ick>; clocks = <&ipss_ick>;
reg = <0x059c>; reg = <0x032c>;
ti,bit-shift = <0>; ti,bit-shift = <0>;
}; };
...@@ -52,7 +52,7 @@ hsotgusb_fck_am35xx: hsotgusb_fck_am35xx { ...@@ -52,7 +52,7 @@ hsotgusb_fck_am35xx: hsotgusb_fck_am35xx {
#clock-cells = <0>; #clock-cells = <0>;
compatible = "ti,gate-clock"; compatible = "ti,gate-clock";
clocks = <&sys_ck>; clocks = <&sys_ck>;
reg = <0x059c>; reg = <0x032c>;
ti,bit-shift = <8>; ti,bit-shift = <8>;
}; };
...@@ -60,7 +60,7 @@ hecc_ck: hecc_ck { ...@@ -60,7 +60,7 @@ hecc_ck: hecc_ck {
#clock-cells = <0>; #clock-cells = <0>;
compatible = "ti,am35xx-gate-clock"; compatible = "ti,am35xx-gate-clock";
clocks = <&sys_ck>; clocks = <&sys_ck>;
reg = <0x059c>; reg = <0x032c>;
ti,bit-shift = <3>; ti,bit-shift = <3>;
}; };
}; };
......
...@@ -382,7 +382,7 @@ usb: usb_otg_hs@47401000 { ...@@ -382,7 +382,7 @@ usb: usb_otg_hs@47401000 {
ti,hwmods = "usb_otg_hs"; ti,hwmods = "usb_otg_hs";
usb0: usb@47401000 { usb0: usb@47401000 {
compatible = "ti,musb-am33xx"; compatible = "ti,musb-dm816";
reg = <0x47401400 0x400 reg = <0x47401400 0x400
0x47401000 0x200>; 0x47401000 0x200>;
reg-names = "mc", "control"; reg-names = "mc", "control";
...@@ -422,7 +422,7 @@ &cppi41dma 11 1 &cppi41dma 12 1 ...@@ -422,7 +422,7 @@ &cppi41dma 11 1 &cppi41dma 12 1
}; };
usb1: usb@47401800 { usb1: usb@47401800 {
compatible = "ti,musb-am33xx"; compatible = "ti,musb-dm816";
reg = <0x47401c00 0x400 reg = <0x47401c00 0x400
0x47401800 0x200>; 0x47401800 0x200>;
reg-names = "mc", "control"; reg-names = "mc", "control";
......
...@@ -832,8 +832,8 @@ tsc2005@0 { ...@@ -832,8 +832,8 @@ tsc2005@0 {
touchscreen-fuzz-x = <4>; touchscreen-fuzz-x = <4>;
touchscreen-fuzz-y = <7>; touchscreen-fuzz-y = <7>;
touchscreen-fuzz-pressure = <2>; touchscreen-fuzz-pressure = <2>;
touchscreen-max-x = <4096>; touchscreen-size-x = <4096>;
touchscreen-max-y = <4096>; touchscreen-size-y = <4096>;
touchscreen-max-pressure = <2048>; touchscreen-max-pressure = <2048>;
ti,x-plate-ohms = <280>; ti,x-plate-ohms = <280>;
......
...@@ -203,23 +203,8 @@ save_context_wfi: ...@@ -203,23 +203,8 @@ save_context_wfi:
*/ */
ldr r1, kernel_flush ldr r1, kernel_flush
blx r1 blx r1
/*
* The kernel doesn't interwork: v7_flush_dcache_all in particluar will
* always return in Thumb state when CONFIG_THUMB2_KERNEL is enabled.
* This sequence switches back to ARM. Note that .align may insert a
* nop: bx pc needs to be word-aligned in order to work.
*/
THUMB( .thumb )
THUMB( .align )
THUMB( bx pc )
THUMB( nop )
.arm
b omap3_do_wfi b omap3_do_wfi
ENDPROC(omap34xx_cpu_suspend)
/*
* Local variables
*/
omap3_do_wfi_sram_addr: omap3_do_wfi_sram_addr:
.word omap3_do_wfi_sram .word omap3_do_wfi_sram
kernel_flush: kernel_flush:
...@@ -364,10 +349,7 @@ exit_nonoff_modes: ...@@ -364,10 +349,7 @@ exit_nonoff_modes:
* =================================== * ===================================
*/ */
ldmfd sp!, {r4 - r11, pc} @ restore regs and return ldmfd sp!, {r4 - r11, pc} @ restore regs and return
ENDPROC(omap3_do_wfi)
/*
* Local variables
*/
sdrc_power: sdrc_power:
.word SDRC_POWER_V .word SDRC_POWER_V
cm_idlest1_core: cm_idlest1_core:
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment