On 2018-02-08 08:52, Matt Sealey wrote:
Hiya,
On 25 January 2018 at 17:55, Channagoud Kadabi <ckadabi@xxxxxxxxxxxxxx>
wrote:
Documentation for last level cache controller device tree bindings,
client bindings usage examples.
[snippety snip]
+- llcc-bank-off:
+ Usage: required
+ Value Type: <u32 array>
+ Definition: Offsets of llcc banks from llcc base address
starting from
+ LLCC bank0.
+
+- llcc-broadcast-off:
+ Usage: required
+ Value Type: <u32>
+ Definition: Offset of broadcast register from LLCC bank0
address.
What's with the redundant namespacing?
Have we not, as a community, realised that we do not need to namespace
properties which are only present under
a single binding or node, or even those that aren't? This mess started
with the regulator bindings and it's never
stopped. What are we at now, 25 years of device trees, 10 years of FDT
on Arm?
Notwithstanding the complete waste of rodata in the kernel image for
matching (& increased time to compare), why
wouldn't you consider why "bank-offset" for your node be any different
than a common property for any other node?
I will clean up the name space and use bank-offset for the property
name.
And if you need to describe register offsets... why aren't you able to
use the reg property?
Reg property did not suit well for my need, so I choose to maintain
offsets instead.
The registers in the HW block are organized as
(offset1) (offset2) (offset3) (offset4)
Base(Block0) -- Block1 -- Block 2 -- Block 3 -- Broadcast_Block
Each block has identical register mapping. You can think of it as 4
instances of identical HW.
Broadcast block is to simplify writes, you don't need to write to
individual blocks instead write to broadcast block.
I use simple-mfd/syscon as the hardware has multiple functions.
Doing regmap on the the Base (Block0) and maintaining offset makes the
driver cleaner rather than using the reg property for
each instance.
Ta,
Matt
--
--
The Qualcomm Innovation Center, Inc. is a member of the Code Aurora
Forum,
a Linux Foundation Collaborative Project
--
To unsubscribe from this list: send the line "unsubscribe linux-arm-msm" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html