Commit 03856e928b0e1a1c274eece1dfe4330a362c37f3

Authored by Tony Lindgren
1 parent 96b4597f0e

bus: ti-sysc: Handle mstandby quirk and use it for musb

We need swsup quirks for sidle and mstandby for musb to work
properly.

Signed-off-by: Tony Lindgren <tony@atomide.com>

Showing 1 changed file with 8 additions and 2 deletions Side-by-side Diff

drivers/bus/ti-sysc.c
... ... @@ -917,6 +917,9 @@
917 917 return -EINVAL;
918 918 }
919 919  
  920 + if (ddata->cfg.quirks & SYSC_QUIRK_SWSUP_MSTANDBY)
  921 + best_mode = SYSC_IDLE_NO;
  922 +
920 923 reg &= ~(SYSC_IDLE_MASK << regbits->midle_shift);
921 924 reg |= best_mode << regbits->midle_shift;
922 925 sysc_write(ddata, ddata->offsets[SYSC_SYSCONFIG], reg);
... ... @@ -978,6 +981,9 @@
978 981 return ret;
979 982 }
980 983  
  984 + if (ddata->cfg.quirks & SYSC_QUIRK_SWSUP_MSTANDBY)
  985 + best_mode = SYSC_IDLE_FORCE;
  986 +
981 987 reg &= ~(SYSC_IDLE_MASK << regbits->midle_shift);
982 988 reg |= best_mode << regbits->midle_shift;
983 989 sysc_write(ddata, ddata->offsets[SYSC_SYSCONFIG], reg);
... ... @@ -1251,6 +1257,8 @@
1251 1257 SYSC_QUIRK("gpu", 0x50000000, 0x14, -1, -1, 0x00010201, 0xffffffff, 0),
1252 1258 SYSC_QUIRK("gpu", 0x50000000, 0xfe00, 0xfe10, -1, 0x40000000 , 0xffffffff,
1253 1259 SYSC_MODULE_QUIRK_SGX),
  1260 + SYSC_QUIRK("usb_otg_hs", 0, 0x400, 0x404, 0x408, 0x00000050,
  1261 + 0xffffffff, SYSC_QUIRK_SWSUP_SIDLE | SYSC_QUIRK_SWSUP_MSTANDBY),
1254 1262 SYSC_QUIRK("wdt", 0, 0, 0x10, 0x14, 0x502a0500, 0xfffff0f0,
1255 1263 SYSC_MODULE_QUIRK_WDT),
1256 1264 /* Watchdog on am3 and am4 */
... ... @@ -1309,8 +1317,6 @@
1309 1317 SYSC_QUIRK("usbhstll", 0, 0, 0x10, 0x14, 0x00000008, 0xffffffff, 0),
1310 1318 SYSC_QUIRK("usb_host_hs", 0, 0, 0x10, 0x14, 0x50700100, 0xffffffff, 0),
1311 1319 SYSC_QUIRK("usb_host_hs", 0, 0, 0x10, -1, 0x50700101, 0xffffffff, 0),
1312   - SYSC_QUIRK("usb_otg_hs", 0, 0x400, 0x404, 0x408, 0x00000050,
1313   - 0xffffffff, 0),
1314 1320 SYSC_QUIRK("vfpe", 0, 0, 0x104, -1, 0x4d001200, 0xffffffff, 0),
1315 1321 #endif
1316 1322 };