Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > linux.kernel > #1286135

Re: [PATCH v2 3/5] ARM: bcm2835: add rpi power domain driver

From Eric Anholt <eric@anholt.net>
Newsgroups linux.kernel
Subject Re: [PATCH v2 3/5] ARM: bcm2835: add rpi power domain driver
Date 2015-12-08 02:10 +0100
Message-ID <qDeX0-3Wh-3@gated-at.bofh.it> (permalink)
References <qC2Ex-5Oo-9@gated-at.bofh.it> <qC2Ez-5Oo-37@gated-at.bofh.it> <qDdxU-2Vw-19@gated-at.bofh.it>
Organization linux.* mail to news gateway

Show all headers | View raw


[Multipart message — attachments visible in raw view] - view raw

Kevin Hilman <khilman@kernel.org> writes:

> Eric Anholt <eric@anholt.net> writes:
>
>> From: Alexander Aring <alex.aring@gmail.com>
>>
>> This patch adds support for several power domains on Raspberry Pi,
>> including USB (so it can be enabled even if the bootloader didn't do
>> it), and graphics.
>>
>> This patch is the combined work of Eric Anholt (who wrote USB support
>> inside of the Raspberry Pi firmware driver, and wrote the non-USB
>> domain support) and Alexander Aring (who separated the original USB
>> work out from the firmware driver).
>>
>> Signed-off-by: Alexander Aring <alex.aring@gmail.com>
>> Signed-off-by: Eric Anholt <eric@anholt.net>
>> ---
>>
>> v2: Add support for power domains other than USB, using the new
>>     firmware interface, reword commit message (changes by Eric)
>
> [...]
>
>> +/*
>> + * Firmware indices for the old power domains interface.  Only a few
>> + * of them were actually implemented.
>> + */
>> +#define RPI_OLD_POWER_DOMAIN_USB		3
>> +#define RPI_OLD_POWER_DOMAIN_V3D		10
>> +
>
> Is "old" the right word here?  Are there firmware versions that could be
> used instead?  What happens when the firwmware is updated next time?

Old is a good word.  It's the old interface.

As for what happens when the firmware is updated: Nothing.  The firmware
is updated all the time, and it maintains backwards compatibility.
Unless you mean "what happens when a newer, fancier power domain
interface is created and we need a name for the newer one" and the
answer is "this is a define entirely within the driver, and we can just
rename it when we want to."

> [...]
>
>> +	/*
>> +	 * Use the old firmware interface for USB power, so that we
>> +	 * can turn it on even if the firmware hasn't been updated.
>> +	 */
>> +	rpi_init_old_power_domain(rpi_domains, RPI_POWER_DOMAIN_USB,
>> +				  RPI_OLD_POWER_DOMAIN_USB, "USB");
>
> This seems a bit restrictive.
>
> To me, it seems that determining "old" or "new" (or revision of fw
> interface to use) should be described in DT, not hard-coded in the power
> domain driver.
>
> What about an additional DT property to describe that? or possibly
> another cell in the domain which could be used to optionally set
> old/legacy.

As the author and maintainer of the code, I don't feel it's restrictive.
The firmware protocol is defined and is guaranteed to continue to exist,
it's only useful for this platform, and defining a new set of custom
devicetree properties for it would only obfuscate the implementation.
DT is a useful tool for separating out the between-board differences for
the same piece of hardware across multiple implementations at different
addresses, while this is neither hardware nor in multiple
implementations at different addresses.

Back to linux.kernel | Previous | NextPrevious in thread | Next in thread | Find similar | Unroll thread


Thread

[PATCH v2 0/5] Raspberry Pi power domains v2 Eric Anholt <eric@anholt.net> - 2015-12-04 18:50 +0100
  [PATCH v2 3/5] ARM: bcm2835: add rpi power domain driver Eric Anholt <eric@anholt.net> - 2015-12-04 18:50 +0100
    Re: [PATCH v2 3/5] ARM: bcm2835: add rpi power domain driver Kevin Hilman <khilman@kernel.org> - 2015-12-08 00:40 +0100
      Re: [PATCH v2 3/5] ARM: bcm2835: add rpi power domain driver Eric Anholt <eric@anholt.net> - 2015-12-08 02:10 +0100
        Re: [PATCH v2 3/5] ARM: bcm2835: add rpi power domain driver Kevin Hilman <khilman@kernel.org> - 2015-12-08 19:20 +0100
    Re: [PATCH v2 3/5] ARM: bcm2835: add rpi power domain driver Stefan Wahren <info@lategoodbye.de> - 2015-12-11 19:20 +0100
  [PATCH v2 2/5] ARM: bcm2835: Define two new packets from the latest firmware. Eric Anholt <eric@anholt.net> - 2015-12-04 18:50 +0100
  [PATCH v2 1/5] power: domain: add pm_genpd_exit Eric Anholt <eric@anholt.net> - 2015-12-04 19:00 +0100
    Re: [PATCH v2 1/5] power: domain: add pm_genpd_exit Jon Hunter <jonathanh@nvidia.com> - 2015-12-07 11:10 +0100
      Re: [PATCH v2 1/5] power: domain: add pm_genpd_exit Kevin Hilman <khilman@kernel.org> - 2015-12-08 20:00 +0100
        Re: [PATCH v2 1/5] power: domain: add pm_genpd_exit Alexander Aring <alex.aring@gmail.com> - 2015-12-09 11:50 +0100
          Re: [PATCH v2 1/5] power: domain: add pm_genpd_exit Russell King - ARM Linux <linux@arm.linux.org.uk> - 2015-12-09 12:00 +0100

csiph-web