Driver changes for ti-sysc for v5.7 merge window Driver changes for ti-sysc interconnect target module driver mostly to be able to probe display subsystem (DSS) without platform data: - Rename clk_enable/disable quirks to less confusing pre and post reset quirks - Enable module reset to work with modules with no sysconfig register - Also consider non-existing module register when matching quirks - Don't warn with nested ti-sysc devices - Implement basic SoC revision handling - Detect DSS related devices - Implement DSS reset quirks Note that there is also a DSS driver specific probe fix to allow probing devices configured for interconnect target module data that was agreed to be merged along with the ti-sysc driver changes. And then there also changes to handle RTC, EDMA and PRUSS: - Add module unlock quirk for RTC - Detect EDMA modules - Add support for handling PRUSS * tag 'omap-for-v5.7/ti-sysc-signed' of git://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap: bus: ti-sysc: Add support for PRUSS SYSC type dt-bindings: bus: ti-sysc: Add support for PRUSS SYSC type bus: ti-sysc: Detect EDMA and set quirk flags for tptc bus: ti-sysc: Fix wrong offset for display subsystem reset quirk bus: ti-sysc: Implement display subsystem reset quirk bus: ti-sysc: Detect display subsystem related devices bus: ti-sysc: Handle module unlock quirk needed for some RTC bus: ti-sysc: Implement SoC revision handling bus: ti-sysc: Don't warn about legacy property for nested ti-sysc devices bus: ti-sysc: Consider non-existing registers too when matching quirks bus: ti-sysc: Improve reset to work with modules with no sysconfig bus: ti-sysc: Rename clk related quirks to pre_reset and post_reset quirks bus: ti-sysc: Fix 1-wire reset quirk drm/omap: Prepare DSS for probing without legacy platform data
Showing the changes to include/linux (1 of 7 files). Show all
Unified · Split
| @@ -17,6 +17,7 @@ enum ti_sysc_module_type { · 16 unmodified lines | |||
| 17 | TI_SYSC_OMAP4_MCASP, | 17 | TI_SYSC_OMAP4_MCASP, |
| 18 | TI_SYSC_OMAP4_USB_HOST_FS, | 18 | TI_SYSC_OMAP4_USB_HOST_FS, |
| 19 | TI_SYSC_DRA7_MCAN, | 19 | TI_SYSC_DRA7_MCAN, |
| 20 | TI_SYSC_PRUSS, | ||
| 20 | }; | 21 | }; |
| 21 | 22 | ||
| 22 | struct ti_sysc_cookie { | 23 | struct ti_sysc_cookie { |
| @@ -49,6 +50,9 @@ struct sysc_regbits { · 26 unmodified lines | |||
| 49 | s8 emufree_shift; | 50 | s8 emufree_shift; |
| 50 | }; | 51 | }; |
| 51 | 52 | ||
| 53 | #define SYSC_MODULE_QUIRK_PRUSS BIT(24) | ||
| 54 | #define SYSC_MODULE_QUIRK_DSS_RESET BIT(23) | ||
| 55 | #define SYSC_MODULE_QUIRK_RTC_UNLOCK BIT(22) | ||
| 52 | #define SYSC_QUIRK_CLKDM_NOAUTO BIT(21) | 56 | #define SYSC_QUIRK_CLKDM_NOAUTO BIT(21) |
| 53 | #define SYSC_QUIRK_FORCE_MSTANDBY BIT(20) | 57 | #define SYSC_QUIRK_FORCE_MSTANDBY BIT(20) |
| 54 | #define SYSC_MODULE_QUIRK_AESS BIT(19) | 58 | #define SYSC_MODULE_QUIRK_AESS BIT(19) |
| @@ -141,6 +145,7 @@ struct clk; · 86 unmodified lines | |||
| 141 | 145 | ||
| 142 | struct ti_sysc_platform_data { | 146 | struct ti_sysc_platform_data { |
| 143 | struct of_dev_auxdata *auxdata; | 147 | struct of_dev_auxdata *auxdata; |
| 148 | bool (*soc_type_gp)(void); | ||
| 144 | int (*init_clockdomain)(struct device *dev, struct clk *fck, | 149 | int (*init_clockdomain)(struct device *dev, struct clk *fck, |
| 145 | struct clk *ick, struct ti_sysc_cookie *cookie); | 150 | struct clk *ick, struct ti_sysc_cookie *cookie); |
| 146 | void (*clkdm_deny_idle)(struct device *dev, | 151 | void (*clkdm_deny_idle)(struct device *dev, |