From: Dirk Eibach <dirk.eibach@gdsys.cc>
To: u-boot@lists.denx.de
Subject: [U-Boot] [PATCH v2 06/10] powerpc/ppc4xx: Use generic FPGA accessors on all gdsys 405ep/ex boards
Date: Tue, 07 May 2013 14:08:23 +0200 [thread overview]
Message-ID: <ba0b32bf657f5f3ffb6056cc6bd0452e@gdsys.cc> (raw)
In-Reply-To: <20130507113609.7D3F038119A@gemini.denx.de>
Am 07.05.2013 13:36, schrieb Wolfgang Denk:
> Dear Dirk Eibach,
>
> In message <cf2913653766edc89705f49e08758df7@gdsys.cc> you wrote:
>>
>>> OK - but I don't see why mclink_send() could not be used in the same
>>> way, i. e. taking a struct member as argument?
>>
>> Certainly it *can* be used using *pointers* to struct members as
>> argument.
>>
>> What I stated yesterday was:
>> "We have FPGAs that are memory mapped and others that are not. They
>> must be accessed by the same drivers. So the alternative would be to
>> create FPGA instances at address NULL and getting the register
>> offesets
>> by casting pointers to u16. Not very nice either."
>
> Yes, you wrote that. I did not understand it then, nor do I
> understand it now. What do you mean by "create FPGA instances at
> address NULL"? in any case, "getting the register offsets by casting
> pointers to u16" makes no sense, as this is exactly what we try to
> avoid. By referencing a C struct you do NOT use any offsets. You use
> references to struct elements; where needed, you let the compiler to
> the address calculations (and the type checking).
>
> No offsets. No casts.
OK. Once more. 3 of our 4 FPGAs are *not* memory mapped. There is no
base address. This is what I want to show by:
>> struct ihs_fpga system_fpgas[] = {
>> (struct ihs_fpga *)CONFIG_SYS_FPGA_BASE(0),
>> (struct ihs_fpga *)NULL,
>> (struct ihs_fpga *)NULL,
>> (struct ihs_fpga *)NULL,
>> };
For accessing registers of those (not memory mapped) FPGAs I need an
u16 register-index. That is what I want to show by:
>> mclink_send(fpga - 1, (u16)addr, data);
This is the cast I am talking about.
This is the reason why I still need the fpga index parameter.
Cheers
Dirk
next prev parent reply other threads:[~2013-05-07 12:08 UTC|newest]
Thread overview: 42+ messages / expand[flat|nested] mbox.gz Atom feed top
2013-05-06 13:35 [U-Boot] [PATCH v2 0/10] Update gdsys ppc4xx-based boards dirk.eibach at gdsys.cc
2013-05-06 13:35 ` [U-Boot] [PATCH v2 01/10] powerpc/ppc4xx: Add generic accessor functions for gdsys FPGA dirk.eibach at gdsys.cc
2013-05-06 14:01 ` Wolfgang Denk
2013-05-06 14:02 ` Wolfgang Denk
2013-05-06 13:35 ` [U-Boot] [PATCH v2 02/10] powerpc/ppc4xx: Add gdsys mclink interface dirk.eibach at gdsys.cc
2013-05-06 13:35 ` [U-Boot] [PATCH v2 03/10] powerpc/ppc4xx: Add fpgad command for dumping gdsys fpga registers dirk.eibach at gdsys.cc
2013-05-06 13:35 ` [U-Boot] [PATCH v2 04/10] powerpc/ppc4xx: Use generic FPGA accessors in gdsys common code dirk.eibach at gdsys.cc
2013-05-06 14:07 ` Wolfgang Denk
2013-05-06 14:57 ` Tom Rini
2013-05-06 15:02 ` Dirk Eibach
2013-05-06 15:09 ` Tom Rini
2013-05-06 15:51 ` Dirk Eibach
2013-05-06 13:35 ` [U-Boot] [PATCH v2 05/10] powerpc/ppc4xx: Support gdsys multichannel iocon hardware dirk.eibach at gdsys.cc
2013-05-06 14:12 ` Wolfgang Denk
2013-05-06 14:16 ` Dirk Eibach
2013-05-06 15:18 ` Wolfgang Denk
2013-05-06 15:49 ` Dirk Eibach
2013-05-06 19:15 ` Wolfgang Denk
2013-05-06 19:31 ` Joe Hershberger
2013-05-06 13:35 ` [U-Boot] [PATCH v2 06/10] powerpc/ppc4xx: Use generic FPGA accessors on all gdsys 405ep/ex boards dirk.eibach at gdsys.cc
2013-05-06 14:10 ` Wolfgang Denk
2013-05-06 14:50 ` Dirk Eibach
2013-05-06 15:22 ` Wolfgang Denk
2013-05-06 15:55 ` Dirk Eibach
2013-05-06 19:23 ` Wolfgang Denk
2013-05-07 8:32 ` Dirk Eibach
2013-05-07 11:36 ` Wolfgang Denk
2013-05-07 12:08 ` Dirk Eibach [this message]
2013-05-07 19:18 ` Wolfgang Denk
2013-05-07 20:45 ` Dirk Eibach
2013-05-08 10:13 ` Wolfgang Denk
2013-05-08 11:17 ` Dirk Eibach
2013-05-08 15:37 ` Wolfgang Denk
2013-05-15 9:23 ` Dirk Eibach
2013-05-28 7:39 ` Dirk Eibach
2013-05-28 7:47 ` Dirk Eibach
2013-05-28 11:47 ` Wolfgang Denk
2013-05-06 13:35 ` [U-Boot] [PATCH v2 07/10] powerpc/ppc4xx: Fixup phy erratum on gdsys iocon hardware dirk.eibach at gdsys.cc
2013-05-06 13:35 ` [U-Boot] [PATCH v2 08/10] powerpc/ppc4xx: Increase timeout for gdsys mclink bus startup dirk.eibach at gdsys.cc
2013-05-06 13:35 ` [U-Boot] [PATCH v2 09/10] powerpc/ppc4xx: Consider gdsys FPGA OSD size dirk.eibach at gdsys.cc
2013-05-06 13:35 ` [U-Boot] [PATCH v2 10/10] powerpc/ppc4xx: Remove CONFIG_SYS_FLASH_PROTECTION from gdsys boards dirk.eibach at gdsys.cc
2013-05-06 14:03 ` [U-Boot] [PATCH v2 0/10] Update gdsys ppc4xx-based boards Wolfgang Denk
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=ba0b32bf657f5f3ffb6056cc6bd0452e@gdsys.cc \
--to=dirk.eibach@gdsys.cc \
--cc=u-boot@lists.denx.de \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.