diff options
author | Paul Walmsley <paul@pwsan.com> | 2011-07-09 21:14:06 -0400 |
---|---|---|
committer | Paul Walmsley <paul@pwsan.com> | 2011-07-09 21:14:06 -0400 |
commit | 212738a4499d278254ed6fdb400e3b4be4cb1de2 (patch) | |
tree | caa57aa80c343a20eaa7a5e32b7205132b561669 /arch/arm/plat-omap/include/plat/omap_hwmod.h | |
parent | ded11383fc14a7483cf30700ffc253caf37c9933 (diff) |
omap_hwmod: use a terminator record with omap_hwmod_mpu_irqs arrays
Previously, struct omap_hwmod_mpu_irqs arrays were unterminated; and
users of these arrays used the ARRAY_SIZE() macro to determine the
length of the array. However, ARRAY_SIZE() only works when the array
is in the same scope as the macro user.
So far this hasn't been a problem. However, to reduce duplicated
data, a subsequent patch will move common data to a separate, shared
file. When this is done, ARRAY_SIZE() will no longer be usable.
This patch removes ARRAY_SIZE() usage for struct omap_hwmod_mpu_irqs
arrays and uses a sentinel value (irq == -1) as the array terminator
instead.
Signed-off-by: Paul Walmsley <paul@pwsan.com>
Diffstat (limited to 'arch/arm/plat-omap/include/plat/omap_hwmod.h')
-rw-r--r-- | arch/arm/plat-omap/include/plat/omap_hwmod.h | 8 |
1 files changed, 3 insertions, 5 deletions
diff --git a/arch/arm/plat-omap/include/plat/omap_hwmod.h b/arch/arm/plat-omap/include/plat/omap_hwmod.h index 523e0b585b6c..3bd6d1d9c0da 100644 --- a/arch/arm/plat-omap/include/plat/omap_hwmod.h +++ b/arch/arm/plat-omap/include/plat/omap_hwmod.h | |||
@@ -98,7 +98,7 @@ struct omap_hwmod_mux_info { | |||
98 | /** | 98 | /** |
99 | * struct omap_hwmod_irq_info - MPU IRQs used by the hwmod | 99 | * struct omap_hwmod_irq_info - MPU IRQs used by the hwmod |
100 | * @name: name of the IRQ channel (module local name) | 100 | * @name: name of the IRQ channel (module local name) |
101 | * @irq_ch: IRQ channel ID | 101 | * @irq: IRQ channel ID (should be non-negative except -1 = terminator) |
102 | * | 102 | * |
103 | * @name should be something short, e.g., "tx" or "rx". It is for use | 103 | * @name should be something short, e.g., "tx" or "rx". It is for use |
104 | * by platform_get_resource_byname(). It is defined locally to the | 104 | * by platform_get_resource_byname(). It is defined locally to the |
@@ -106,7 +106,7 @@ struct omap_hwmod_mux_info { | |||
106 | */ | 106 | */ |
107 | struct omap_hwmod_irq_info { | 107 | struct omap_hwmod_irq_info { |
108 | const char *name; | 108 | const char *name; |
109 | u16 irq; | 109 | s16 irq; |
110 | }; | 110 | }; |
111 | 111 | ||
112 | /** | 112 | /** |
@@ -466,7 +466,7 @@ struct omap_hwmod_class { | |||
466 | * @name: name of the hwmod | 466 | * @name: name of the hwmod |
467 | * @class: struct omap_hwmod_class * to the class of this hwmod | 467 | * @class: struct omap_hwmod_class * to the class of this hwmod |
468 | * @od: struct omap_device currently associated with this hwmod (internal use) | 468 | * @od: struct omap_device currently associated with this hwmod (internal use) |
469 | * @mpu_irqs: ptr to an array of MPU IRQs (see also mpu_irqs_cnt) | 469 | * @mpu_irqs: ptr to an array of MPU IRQs |
470 | * @sdma_reqs: ptr to an array of System DMA request IDs (see sdma_reqs_cnt) | 470 | * @sdma_reqs: ptr to an array of System DMA request IDs (see sdma_reqs_cnt) |
471 | * @prcm: PRCM data pertaining to this hwmod | 471 | * @prcm: PRCM data pertaining to this hwmod |
472 | * @main_clk: main clock: OMAP clock name | 472 | * @main_clk: main clock: OMAP clock name |
@@ -480,7 +480,6 @@ struct omap_hwmod_class { | |||
480 | * @_sysc_cache: internal-use hwmod flags | 480 | * @_sysc_cache: internal-use hwmod flags |
481 | * @_mpu_rt_va: cached register target start address (internal use) | 481 | * @_mpu_rt_va: cached register target start address (internal use) |
482 | * @_mpu_port_index: cached MPU register target slave ID (internal use) | 482 | * @_mpu_port_index: cached MPU register target slave ID (internal use) |
483 | * @mpu_irqs_cnt: number of @mpu_irqs | ||
484 | * @sdma_reqs_cnt: number of @sdma_reqs | 483 | * @sdma_reqs_cnt: number of @sdma_reqs |
485 | * @opt_clks_cnt: number of @opt_clks | 484 | * @opt_clks_cnt: number of @opt_clks |
486 | * @master_cnt: number of @master entries | 485 | * @master_cnt: number of @master entries |
@@ -529,7 +528,6 @@ struct omap_hwmod { | |||
529 | u16 flags; | 528 | u16 flags; |
530 | u8 _mpu_port_index; | 529 | u8 _mpu_port_index; |
531 | u8 response_lat; | 530 | u8 response_lat; |
532 | u8 mpu_irqs_cnt; | ||
533 | u8 sdma_reqs_cnt; | 531 | u8 sdma_reqs_cnt; |
534 | u8 rst_lines_cnt; | 532 | u8 rst_lines_cnt; |
535 | u8 opt_clks_cnt; | 533 | u8 opt_clks_cnt; |