[U-Boot] [PATCH v2 13/22] omap4: add clock support

Aneesh V
2011-06-21T07:05:55Z

On Tuesday 21 June 2011 12:35 PM, Wolfgang Denk wrote:
> Dear Aneesh V,
>
> In message<4E0030F8.6030104@ti.com> you wrote:
>>
>> I am finding it difficult to implement this using the struct based
>> approach. I tried the sample code below:
>>
>> struct my_regs_struct {
>> const unsigned int reg1;
>> const unsigned int reg2;
>> const unsigned int reg3;
>> };
>>

The const for structure fields above were not intended. I put them
while debugging this issue and forgot to remove later.

>> static struct my_regs_struct *const my_regs = (struct my_regs_struct
>> *)0x1000;
>>
>> static unsigned int *const reg_arr[] = {
>> &my_regs->reg1,
>> &my_regs->reg3
>> };
>>
>> void main(void)
>> {
>> printf("regs %x %x \n", reg_arr[0], reg_arr[1]);
>> }
>
> Sorry, but I fail to understand the problem. Why is reg_arr[] needed?
> Why don't you use
>
> struct my_regs_struct {
> const unsigned int reg[3];
> };
> ?

I want a number of register addresses in an array - an array of
constant pointers. The array is populated at compile time with the
addresses of all the modules that need to be initialized. At run-time I
do a specific operation on all the registers given in this array.

best regards,
Aneesh