From: Michal Simek <monstr@monstr.eu>
To: Rob Herring <robherring2@gmail.com>
Cc: Grant Likely <grant.likely@linaro.org>,
linux-kernel@vger.kernel.org, devicetree@vger.kernel.org,
Rob Herring <robh@kernel.org>,
Benjamin Herrenschmidt <benh@kernel.crashing.org>,
Paul Mackerras <paulus@samba.org>,
linuxppc-dev@lists.ozlabs.org
Subject: Re: [PATCH v2 14/21] of/fdt: create common debugfs
Date: Wed, 23 Apr 2014 15:52:30 +0200 [thread overview]
Message-ID: <5357C59E.8080400@monstr.eu> (raw)
In-Reply-To: <1398215901-25609-15-git-send-email-robherring2@gmail.com>
[-- Attachment #1: Type: text/plain, Size: 4920 bytes --]
On 04/23/2014 03:18 AM, Rob Herring wrote:
> From: Rob Herring <robh@kernel.org>
>
> Both powerpc and microblaze have the same FDT blob in debugfs feature.
> Move this to common location and remove the powerpc and microblaze
> implementations. This feature could become more useful when FDT
> overlay support is added.
>
> This changes the path of the blob from "$arch/flat-device-tree" to
> "device-tree/flat-device-tree".
>
> Signed-off-by: Rob Herring <robh@kernel.org>
> Cc: Michal Simek <monstr@monstr.eu>
> Cc: Benjamin Herrenschmidt <benh@kernel.crashing.org>
> Cc: Paul Mackerras <paulus@samba.org>
> Cc: linuxppc-dev@lists.ozlabs.org
> ---
> v2: move to after libfdt conversion
>
> arch/microblaze/kernel/prom.c | 31 -------------------------------
> arch/powerpc/kernel/prom.c | 21 ---------------------
> drivers/of/fdt.c | 24 ++++++++++++++++++++++++
> 3 files changed, 24 insertions(+), 52 deletions(-)
>
> diff --git a/arch/microblaze/kernel/prom.c b/arch/microblaze/kernel/prom.c
> index c766306..68f0999 100644
> --- a/arch/microblaze/kernel/prom.c
> +++ b/arch/microblaze/kernel/prom.c
> @@ -114,34 +114,3 @@ void __init early_init_devtree(void *params)
>
> pr_debug(" <- early_init_devtree()\n");
> }
> -
> -/*******
> - *
> - * New implementation of the OF "find" APIs, return a refcounted
> - * object, call of_node_put() when done. The device tree and list
> - * are protected by a rw_lock.
> - *
> - * Note that property management will need some locking as well,
> - * this isn't dealt with yet.
> - *
> - *******/
> -
> -#if defined(CONFIG_DEBUG_FS) && defined(DEBUG)
> -static struct debugfs_blob_wrapper flat_dt_blob;
> -
> -static int __init export_flat_device_tree(void)
> -{
> - struct dentry *d;
> -
> - flat_dt_blob.data = initial_boot_params;
> - flat_dt_blob.size = initial_boot_params->totalsize;
> -
> - d = debugfs_create_blob("flat-device-tree", S_IFREG | S_IRUSR,
> - of_debugfs_root, &flat_dt_blob);
> - if (!d)
> - return 1;
> -
> - return 0;
> -}
> -device_initcall(export_flat_device_tree);
> -#endif
> diff --git a/arch/powerpc/kernel/prom.c b/arch/powerpc/kernel/prom.c
> index f971134..03624ce 100644
> --- a/arch/powerpc/kernel/prom.c
> +++ b/arch/powerpc/kernel/prom.c
> @@ -29,7 +29,6 @@
> #include <linux/bitops.h>
> #include <linux/export.h>
> #include <linux/kexec.h>
> -#include <linux/debugfs.h>
> #include <linux/irq.h>
> #include <linux/memblock.h>
> #include <linux/of.h>
> @@ -924,23 +923,3 @@ bool arch_match_cpu_phys_id(int cpu, u64 phys_id)
> {
> return (int)phys_id == get_hard_smp_processor_id(cpu);
> }
> -
> -#if defined(CONFIG_DEBUG_FS) && defined(DEBUG)
> -static struct debugfs_blob_wrapper flat_dt_blob;
> -
> -static int __init export_flat_device_tree(void)
> -{
> - struct dentry *d;
> -
> - flat_dt_blob.data = initial_boot_params;
> - flat_dt_blob.size = be32_to_cpu(initial_boot_params->totalsize);
> -
> - d = debugfs_create_blob("flat-device-tree", S_IFREG | S_IRUSR,
> - powerpc_debugfs_root, &flat_dt_blob);
> - if (!d)
> - return 1;
> -
> - return 0;
> -}
> -__initcall(export_flat_device_tree);
> -#endif
> diff --git a/drivers/of/fdt.c b/drivers/of/fdt.c
> index 0b38a6a..4129f74 100644
> --- a/drivers/of/fdt.c
> +++ b/drivers/of/fdt.c
> @@ -20,6 +20,7 @@
> #include <linux/errno.h>
> #include <linux/slab.h>
> #include <linux/libfdt.h>
> +#include <linux/debugfs.h>
>
> #include <asm/setup.h> /* for COMMAND_LINE_SIZE */
> #include <asm/page.h>
> @@ -916,4 +917,27 @@ void __init unflatten_and_copy_device_tree(void)
> unflatten_device_tree();
> }
>
> +#if defined(CONFIG_DEBUG_FS) && defined(DEBUG)
> +static struct debugfs_blob_wrapper flat_dt_blob;
> +
> +static int __init of_flat_dt_debugfs_export_fdt(void)
> +{
> + struct dentry *d = debugfs_create_dir("device-tree", NULL);
> +
> + if (!d)
> + return -ENOENT;
> +
> + flat_dt_blob.data = initial_boot_params;
> + flat_dt_blob.size = fdt_totalsize(initial_boot_params);
As I wrote in different patch. I would move this to the end of this
series and
flat_dt_blob.size = of_get_flat_dt_size();
> +
> + d = debugfs_create_blob("flat-device-tree", S_IFREG | S_IRUSR,
> + d, &flat_dt_blob);
> + if (!d)
> + return -ENOENT;
> +
> + return 0;
> +}
> +module_init(of_flat_dt_debugfs_export_fdt);
> +#endif
> +
> #endif /* CONFIG_OF_EARLY_FLATTREE */
>
Other than comment above:
For Microblaze:
Tested-by: Michal Simek <monstr@monstr.eu>
Thanks,
Michal
--
Michal Simek, Ing. (M.Eng), OpenPGP -> KeyID: FE3D1F91
w: www.monstr.eu p: +42-0-721842854
Maintainer of Linux kernel - Microblaze cpu - http://www.monstr.eu/fdt/
Maintainer of Linux kernel - Xilinx Zynq ARM architecture
Microblaze U-BOOT custodian and responsible for u-boot arm zynq platform
[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 263 bytes --]
next prev parent reply other threads:[~2014-04-23 13:52 UTC|newest]
Thread overview: 34+ messages / expand[flat|nested] mbox.gz Atom feed top
2014-04-23 1:18 [PATCH v2 00/21] FDT clean-ups and libfdt support Rob Herring
2014-04-23 1:18 ` [PATCH v2 01/21] mips: octeon: convert to use unflatten_and_copy_device_tree Rob Herring
2014-04-23 1:18 ` [PATCH v2 02/21] mips: lantiq: copy built-in DTB out of init section Rob Herring
2014-04-23 1:18 ` [PATCH v2 03/21] mips: xlp: " Rob Herring
2014-04-23 1:18 ` [PATCH v2 04/21] mips: ralink: convert to use unflatten_and_copy_device_tree Rob Herring
2014-04-23 1:18 ` [PATCH v2 05/21] ARM: dt: use default early_init_dt_alloc_memory_arch Rob Herring
2014-04-23 1:18 ` [PATCH v2 06/21] c6x: convert fdt pointers to opaque pointers Rob Herring
2014-04-24 14:21 ` Mark Salter
2014-04-23 1:18 ` [PATCH v2 07/21] mips: " Rob Herring
2014-04-23 1:18 ` [PATCH v2 08/21] of/fdt: consolidate built-in dtb section variables Rob Herring
2014-04-23 1:18 ` [PATCH v2 09/21] of/fdt: remove some unneeded includes Rob Herring
2014-04-23 1:18 ` [PATCH v2 10/21] of/fdt: remove unused of_scan_flat_dt_by_path Rob Herring
2014-04-23 1:18 ` [PATCH v2 11/21] of/fdt: update of_get_flat_dt_prop in prep for libfdt Rob Herring
2014-04-23 1:18 ` [PATCH v2 12/21] of/fdt: Convert FDT functions to use libfdt Rob Herring
2014-04-23 1:18 ` [PATCH v2 13/21] of/fdt: use libfdt accessors for header data Rob Herring
2014-04-23 1:18 ` [PATCH v2 14/21] of/fdt: create common debugfs Rob Herring
2014-04-23 13:52 ` Michal Simek [this message]
2014-04-23 1:18 ` [PATCH v2 15/21] of/fdt: move memreserve and dtb memory reservations into core Rob Herring
2014-05-01 16:27 ` Catalin Marinas
2014-04-23 1:18 ` [PATCH v2 16/21] of/fdt: fix phys_addr_t related print size warnings Rob Herring
2014-04-23 1:18 ` [PATCH v2 17/21] of/fdt: introduce of_get_flat_dt_size Rob Herring
2014-04-23 13:45 ` Michal Simek
2014-04-23 1:18 ` [PATCH v2 18/21] powerpc: use libfdt accessors for header data Rob Herring
2014-04-23 13:48 ` Michal Simek
2014-04-23 14:05 ` Rob Herring
2014-04-23 14:21 ` Michal Simek
2014-04-23 1:18 ` [PATCH v2 19/21] x86: use FDT accessors for FDT blob " Rob Herring
2014-04-23 1:18 ` [PATCH v2 20/21] of/fdt: convert initial_boot_params to opaque pointer Rob Herring
2014-04-23 1:18 ` [PATCH v2 21/21] of: push struct boot_param_header and defines into powerpc Rob Herring
2014-04-28 1:37 ` Benjamin Herrenschmidt
2014-04-23 14:22 ` [PATCH v2 00/21] FDT clean-ups and libfdt support Michal Simek
2014-04-23 21:04 ` Max Filippov
2014-04-29 14:00 ` Grant Likely
2014-04-30 0:33 ` Stephen N Chivers
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=5357C59E.8080400@monstr.eu \
--to=monstr@monstr.eu \
--cc=benh@kernel.crashing.org \
--cc=devicetree@vger.kernel.org \
--cc=grant.likely@linaro.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linuxppc-dev@lists.ozlabs.org \
--cc=paulus@samba.org \
--cc=robh@kernel.org \
--cc=robherring2@gmail.com \
/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;
as well as URLs for NNTP newsgroup(s).