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 | 17 | TI_SYSC_OMAP4_MCASP, |
| 18 | 18 | TI_SYSC_OMAP4_USB_HOST_FS, |
| 19 | 19 | TI_SYSC_DRA7_MCAN, |
| 20 | + TI_SYSC_PRUSS, | |
| 20 | 21 | }; |
| 21 | 22 | |
| 22 | 23 | struct ti_sysc_cookie { |
| @@ -49,6 +50,9 @@ struct sysc_regbits { · 26 unmodified lines | ||
| 49 | 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 | 56 | #define SYSC_QUIRK_CLKDM_NOAUTO BIT(21) |
| 53 | 57 | #define SYSC_QUIRK_FORCE_MSTANDBY BIT(20) |
| 54 | 58 | #define SYSC_MODULE_QUIRK_AESS BIT(19) |
| @@ -141,6 +145,7 @@ struct clk; · 86 unmodified lines | ||
| 141 | 145 | |
| 142 | 146 | struct ti_sysc_platform_data { |
| 143 | 147 | struct of_dev_auxdata *auxdata; |
| 148 | + bool (*soc_type_gp)(void); | |
| 144 | 149 | int (*init_clockdomain)(struct device *dev, struct clk *fck, |
| 145 | 150 | struct clk *ick, struct ti_sysc_cookie *cookie); |
| 146 | 151 | void (*clkdm_deny_idle)(struct device *dev, |