From: David Daney <ddaney@caviumnetworks.com>
To: linux-mips@linux-mips.org, ralf@linux-mips.org,
devicetree-discuss@lists.ozlabs.org, grant.likely@secretlab.ca,
linux-kernel@vger.kernel.org
Cc: David Daney <ddaney@caviumnetworks.com>
Subject: [RFC PATCH v3 0/6] MIPS: Octeon: Use Device Tree.
Date: Thu, 5 May 2011 10:02:23 -0700 [thread overview]
Message-ID: <1304614949-30460-1-git-send-email-ddaney@caviumnetworks.com> (raw)
After several weeks of fire fighting, I am back to my Octeon device
tree patches.
New in v3:
More updates to device tree bindings, and perhaps more importantly
descriptions/definitions of the bindings
libfdt building moved to devices/of/libfdt.
Cleanup and style improvements as suggested by Grant Likley.
Omitted all the driver changes, as they are unchanged from the last
set, and at this stage the patches are just an RFC.
New in v2:
Changed many device tree bindings. They should be closer to the
standard naming scheme now.
Editing of the template device tree is done in the flattened form
using libfdt.
Standard platform driver functions used in preference to the
of_platform variety.
v1:
Background: The Octeon family of SOCs has a variety of on-chip
controllers for Ethernet, MDIO, I2C, and several other I/O devices.
These chips are used on boards with a great variety of different
configurations. To date, the configuration and bus topology
information has been hard coded in the drivers and support code.
To facilitate supporting new chips and boards, we would like to make
use use the Device Tree to encode the configuration information.
I would like to get some feedback on the current code I am working
with. The migration approach is as follows:
o Several device tree templates are statically linked into the kernel
image. Based on SOC type and board type one of these is selected in
early boot. Legacy configuration probing code is used to prune and
patch the device tree template.
o New SOCs and boards will directly use a device tree passed by the
bootloader (This patch set doesn't actually implement this, but it
is trivial to add).
1/6 - Infrastructure to allow scripts/dtc/libfdt to be used in the
kernel.
2/6 - OF patch to simplify of_find_node_by_path().
3/6 - Add the statically linked Device Tree templates and bindings
descriptions.
4/6 - Remove unused arch/mips/prom.c code that conflicts with
following patches.
5/6 - irq_create_of_mapping() function.
6/6 - Fix up Device Tree template for current environment.
David Daney (6):
of: Allow scripts/dtc/libfdt to be used from kernel code
of: Make of_find_node_by_path() traverse /aliases for relative paths.
MIPS: Octeon: Add device tree source files.
MIPS: Prune some target specific code out of prom.c
MIPS: Octeon: Add irq_create_of_mapping() and GPIO interrupts.
MIPS: Octeon: Initialize and fixup device tree.
.../devicetree/bindings/mips/cavium/bootbus.txt | 37 ++
.../devicetree/bindings/mips/cavium/ciu.txt | 26 ++
.../devicetree/bindings/mips/cavium/gpio.txt | 48 +++
.../devicetree/bindings/mips/cavium/mdio.txt | 27 ++
.../devicetree/bindings/mips/cavium/mix.txt | 40 ++
.../devicetree/bindings/mips/cavium/pip.txt | 98 +++++
.../devicetree/bindings/mips/cavium/twsi.txt | 34 ++
.../devicetree/bindings/mips/cavium/uart.txt | 19 +
.../devicetree/bindings/mips/cavium/uctl.txt | 47 +++
arch/mips/Kconfig | 1 +
arch/mips/cavium-octeon/.gitignore | 2 +
arch/mips/cavium-octeon/Makefile | 15 +
arch/mips/cavium-octeon/octeon-irq.c | 183 ++++++++-
arch/mips/cavium-octeon/octeon-platform.c | 295 +++++++++++++
arch/mips/cavium-octeon/octeon_3xxx.dts | 431 ++++++++++++++++++++
arch/mips/cavium-octeon/setup.c | 17 +
arch/mips/kernel/prom.c | 49 ---
drivers/of/Kconfig | 3 +
drivers/of/Makefile | 2 +
drivers/of/base.c | 41 ++-
drivers/of/libfdt/Makefile | 8 +
include/linux/libfdt.h | 8 +
include/linux/libfdt_env.h | 13 +
23 files changed, 1393 insertions(+), 51 deletions(-)
create mode 100644 Documentation/devicetree/bindings/mips/cavium/bootbus.txt
create mode 100644 Documentation/devicetree/bindings/mips/cavium/ciu.txt
create mode 100644 Documentation/devicetree/bindings/mips/cavium/gpio.txt
create mode 100644 Documentation/devicetree/bindings/mips/cavium/mdio.txt
create mode 100644 Documentation/devicetree/bindings/mips/cavium/mix.txt
create mode 100644 Documentation/devicetree/bindings/mips/cavium/pip.txt
create mode 100644 Documentation/devicetree/bindings/mips/cavium/twsi.txt
create mode 100644 Documentation/devicetree/bindings/mips/cavium/uart.txt
create mode 100644 Documentation/devicetree/bindings/mips/cavium/uctl.txt
create mode 100644 arch/mips/cavium-octeon/.gitignore
create mode 100644 arch/mips/cavium-octeon/octeon_3xxx.dts
create mode 100644 drivers/of/libfdt/Makefile
create mode 100644 include/linux/libfdt.h
create mode 100644 include/linux/libfdt_env.h
--
1.7.2.3
next reply other threads:[~2011-05-05 17:02 UTC|newest]
Thread overview: 14+ messages / expand[flat|nested] mbox.gz Atom feed top
2011-05-05 17:02 David Daney [this message]
2011-05-05 17:02 ` [RFC PATCH v3 1/6] of: Allow scripts/dtc/libfdt to be used from kernel code David Daney
2011-05-06 10:56 ` Michal Marek
2011-05-06 17:14 ` David Daney
2011-05-05 17:02 ` [RFC PATCH v3 2/6] of: Make of_find_node_by_path() traverse /aliases for relative paths David Daney
2011-05-06 10:05 ` Sergei Shtylyov
2011-05-19 18:54 ` Grant Likely
2011-05-06 10:17 ` Sergei Shtylyov
2011-05-05 17:02 ` [RFC PATCH v3 3/6] MIPS: Octeon: Add device tree source files David Daney
2011-05-05 17:02 ` [RFC PATCH v3 4/6] MIPS: Prune some target specific code out of prom.c David Daney
2011-05-05 17:02 ` [RFC PATCH v3 5/6] MIPS: Octeon: Add irq_create_of_mapping() and GPIO interrupts David Daney
2011-05-05 17:02 ` [RFC PATCH v3 6/6] MIPS: Octeon: Initialize and fixup device tree David Daney
2011-05-05 17:40 ` [RFC PATCH v3 0/6] MIPS: Octeon: Use Device Tree Grant Likely
2011-05-05 17:48 ` David Daney
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=1304614949-30460-1-git-send-email-ddaney@caviumnetworks.com \
--to=ddaney@caviumnetworks.com \
--cc=devicetree-discuss@lists.ozlabs.org \
--cc=grant.likely@secretlab.ca \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-mips@linux-mips.org \
--cc=ralf@linux-mips.org \
/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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox
all inboxes | Powered by JetHome®