diff options
author | Tony Lindgren <tony@atomide.com> | 2010-12-22 21:42:35 -0500 |
---|---|---|
committer | Tony Lindgren <tony@atomide.com> | 2010-12-22 21:42:35 -0500 |
commit | 9796b323b5a1940f9ec62c3a6cf7e442bf540d53 (patch) | |
tree | 8fb2b57e5cbc7cfdfc5a26c4f5daf6f8c884353e /arch/arm/plat-omap | |
parent | 8419fdbaf2118a0a169441be82f09f7be93a5ca1 (diff) |
omap2+: Add support for hwmod specific muxing of devices
This allows adding hwmod specific pads dynamically during the
platform device init.
Note that we don't currently have the hwmod specific signals
listed in the hwmod data, but struct omap_hwmod_mux_info will
make that possible if necessary.
Signed-off-by: Tony Lindgren <tony@atomide.com>
Diffstat (limited to 'arch/arm/plat-omap')
-rw-r--r-- | arch/arm/plat-omap/include/plat/omap_hwmod.h | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/arch/arm/plat-omap/include/plat/omap_hwmod.h b/arch/arm/plat-omap/include/plat/omap_hwmod.h index b219a88cac2c..6864a997f2ca 100644 --- a/arch/arm/plat-omap/include/plat/omap_hwmod.h +++ b/arch/arm/plat-omap/include/plat/omap_hwmod.h | |||
@@ -81,6 +81,18 @@ extern struct omap_hwmod_sysc_fields omap_hwmod_sysc_type2; | |||
81 | #define HWMOD_IDLEMODE_SMART_WKUP (1 << 3) | 81 | #define HWMOD_IDLEMODE_SMART_WKUP (1 << 3) |
82 | 82 | ||
83 | /** | 83 | /** |
84 | * struct omap_hwmod_mux_info - hwmod specific mux configuration | ||
85 | * @pads: array of omap_device_pad entries | ||
86 | * @nr_pads: number of omap_device_pad entries | ||
87 | * | ||
88 | * Note that this is currently built during init as needed. | ||
89 | */ | ||
90 | struct omap_hwmod_mux_info { | ||
91 | int nr_pads; | ||
92 | struct omap_device_pad *pads; | ||
93 | }; | ||
94 | |||
95 | /** | ||
84 | * struct omap_hwmod_irq_info - MPU IRQs used by the hwmod | 96 | * struct omap_hwmod_irq_info - MPU IRQs used by the hwmod |
85 | * @name: name of the IRQ channel (module local name) | 97 | * @name: name of the IRQ channel (module local name) |
86 | * @irq_ch: IRQ channel ID | 98 | * @irq_ch: IRQ channel ID |
@@ -487,6 +499,7 @@ struct omap_hwmod { | |||
487 | const char *name; | 499 | const char *name; |
488 | struct omap_hwmod_class *class; | 500 | struct omap_hwmod_class *class; |
489 | struct omap_device *od; | 501 | struct omap_device *od; |
502 | struct omap_hwmod_mux_info *mux; | ||
490 | struct omap_hwmod_irq_info *mpu_irqs; | 503 | struct omap_hwmod_irq_info *mpu_irqs; |
491 | struct omap_hwmod_dma_info *sdma_reqs; | 504 | struct omap_hwmod_dma_info *sdma_reqs; |
492 | struct omap_hwmod_rst_info *rst_lines; | 505 | struct omap_hwmod_rst_info *rst_lines; |