forked from luck/tmp_suning_uos_patched
bus: ti-sysc: Handle swsup idle mode quirks
In preparation of dropping interconnect target module platform data in favor of devicetree based data, we must pass swsup idle quirks to the platform data functions. For now, let's only tag the UART modules with the SWSUP_SIDLE_ACT quirk. The other modules will get tagged with swsup quirks as we drop the platform data and test the changes. Signed-off-by: Tony Lindgren <tony@atomide.com>
This commit is contained in:
parent
10645e81b9
commit
b4a9a7a389
|
@ -3683,6 +3683,12 @@ int omap_hwmod_init_module(struct device *dev,
|
|||
oh->flags |= HWMOD_INIT_NO_RESET;
|
||||
if (data->cfg->quirks & SYSC_QUIRK_USE_CLOCKACT)
|
||||
oh->flags |= HWMOD_SET_DEFAULT_CLOCKACT;
|
||||
if (data->cfg->quirks & SYSC_QUIRK_SWSUP_SIDLE)
|
||||
oh->flags |= HWMOD_SWSUP_SIDLE;
|
||||
if (data->cfg->quirks & SYSC_QUIRK_SWSUP_SIDLE_ACT)
|
||||
oh->flags |= HWMOD_SWSUP_SIDLE_ACT;
|
||||
if (data->cfg->quirks & SYSC_QUIRK_SWSUP_MSTANDBY)
|
||||
oh->flags |= HWMOD_SWSUP_MSTANDBY;
|
||||
|
||||
error = omap_hwmod_check_module(dev, oh, data, sysc_fields,
|
||||
rev_offs, sysc_offs, syss_offs,
|
||||
|
|
|
@ -978,12 +978,12 @@ static const struct sysc_revision_quirk sysc_revision_quirks[] = {
|
|||
SYSC_QUIRK("timer", 0, 0, 0x10, -1, 0x4fff1301, 0xffff00ff,
|
||||
0),
|
||||
SYSC_QUIRK("uart", 0, 0x50, 0x54, 0x58, 0x00000052, 0xffffffff,
|
||||
SYSC_QUIRK_LEGACY_IDLE),
|
||||
SYSC_QUIRK_SWSUP_SIDLE_ACT | SYSC_QUIRK_LEGACY_IDLE),
|
||||
/* Uarts on omap4 and later */
|
||||
SYSC_QUIRK("uart", 0, 0x50, 0x54, 0x58, 0x50411e03, 0xffff00ff,
|
||||
SYSC_QUIRK_LEGACY_IDLE),
|
||||
SYSC_QUIRK_SWSUP_SIDLE_ACT | SYSC_QUIRK_LEGACY_IDLE),
|
||||
SYSC_QUIRK("uart", 0, 0x50, 0x54, 0x58, 0x47422e03, 0xffffffff,
|
||||
SYSC_QUIRK_LEGACY_IDLE),
|
||||
SYSC_QUIRK_SWSUP_SIDLE_ACT | SYSC_QUIRK_LEGACY_IDLE),
|
||||
|
||||
/* Quirks that need to be set based on the module address */
|
||||
SYSC_QUIRK("mcpdm", 0x40132000, 0, 0x10, -1, 0x50000800, 0xffffffff,
|
||||
|
|
|
@ -46,6 +46,9 @@ struct sysc_regbits {
|
|||
s8 emufree_shift;
|
||||
};
|
||||
|
||||
#define SYSC_QUIRK_SWSUP_MSTANDBY BIT(13)
|
||||
#define SYSC_QUIRK_SWSUP_SIDLE_ACT BIT(12)
|
||||
#define SYSC_QUIRK_SWSUP_SIDLE BIT(11)
|
||||
#define SYSC_QUIRK_EXT_OPT_CLOCK BIT(10)
|
||||
#define SYSC_QUIRK_LEGACY_IDLE BIT(9)
|
||||
#define SYSC_QUIRK_RESET_STATUS BIT(8)
|
||||
|
|
Loading…
Reference in New Issue
Block a user