From: Kent Yoder <key@linux.vnet.ibm.com>
To: linux-kernel@vger.kernel.org
Cc: rcj@linux.vnet.ibm.com, linuxppc-dev@lists.ozlabs.org,
linux-crypto@vger.kernel.org
Subject: [PATCH 02/17] powerpc: Add pseries update notifier for OFDT prop changes
Date: Wed, 21 Mar 2012 16:38:10 -0500 [thread overview]
Message-ID: <1332365890.3858.26.camel@key-ThinkPad-W510> (raw)
In-Reply-To: <1332365297.3858.5.camel@key-ThinkPad-W510>
From: Robert Jennings <rcj@linux.vnet.ibm.com>
This adds an update notifier mechanism for changes to properties in the
device tree. One use of this would be a device driver that needs to act
on changes to it's properties in the device tree after a live migration
or a dynamic activation that is triggered by updates to ofdt properties.
Signed-off-by: Robert Jennings <rcj@linux.vnet.ibm.com>
Signed-off-by: Kent Yoder <key@linux.vnet.ibm.com>
---
arch/powerpc/include/asm/pSeries_reconfig.h | 12 ++++++++++++
arch/powerpc/platforms/pseries/reconfig.c | 7 +++++++
2 files changed, 19 insertions(+), 0 deletions(-)
diff --git a/arch/powerpc/include/asm/pSeries_reconfig.h b/arch/powerpc/include/asm/pSeries_reconfig.h
index 23cd6cc..c07edfe 100644
--- a/arch/powerpc/include/asm/pSeries_reconfig.h
+++ b/arch/powerpc/include/asm/pSeries_reconfig.h
@@ -13,6 +13,18 @@
#define PSERIES_RECONFIG_REMOVE 0x0002
#define PSERIES_DRCONF_MEM_ADD 0x0003
#define PSERIES_DRCONF_MEM_REMOVE 0x0004
+#define PSERIES_UPDATE_PROPERTY 0x0005
+
+/**
+ * pSeries_reconfig_notify - Notifier value structure for OFDT property updates
+ *
+ * @node: Device tree node which owns the property being updated
+ * @property: Updated property
+ */
+struct pSeries_reconfig_prop_update {
+ struct device_node *node;
+ struct property *property;
+};
#ifdef CONFIG_PPC_PSERIES
extern int pSeries_reconfig_notifier_register(struct notifier_block *);
diff --git a/arch/powerpc/platforms/pseries/reconfig.c b/arch/powerpc/platforms/pseries/reconfig.c
index 168651a..7b3bf76 100644
--- a/arch/powerpc/platforms/pseries/reconfig.c
+++ b/arch/powerpc/platforms/pseries/reconfig.c
@@ -103,11 +103,13 @@ int pSeries_reconfig_notifier_register(struct notifier_block *nb)
{
return blocking_notifier_chain_register(&pSeries_reconfig_chain, nb);
}
+EXPORT_SYMBOL_GPL(pSeries_reconfig_notifier_register);
void pSeries_reconfig_notifier_unregister(struct notifier_block *nb)
{
blocking_notifier_chain_unregister(&pSeries_reconfig_chain, nb);
}
+EXPORT_SYMBOL_GPL(pSeries_reconfig_notifier_unregister);
int pSeries_reconfig_notify(unsigned long action, void *p)
{
@@ -426,6 +428,7 @@ static int do_remove_property(char *buf, size_t bufsize)
static int do_update_property(char *buf, size_t bufsize)
{
struct device_node *np;
+ struct pSeries_reconfig_prop_update upd_value;
unsigned char *value;
char *name, *end, *next_prop;
int rc, length;
@@ -454,6 +457,10 @@ static int do_update_property(char *buf, size_t bufsize)
return -ENODEV;
}
+ upd_value.node = np;
+ upd_value.property = newprop;
+ pSeries_reconfig_notify(PSERIES_UPDATE_PROPERTY, &upd_value);
+
rc = prom_update_property(np, newprop, oldprop);
if (rc)
return rc;
--
1.7.1
next prev parent reply other threads:[~2012-03-21 21:38 UTC|newest]
Thread overview: 30+ messages / expand[flat|nested] mbox.gz Atom feed top
2012-03-21 21:28 [PATCH 00/17] Platform Facilities Option and crypto accelerator driver Kent Yoder
2012-03-21 21:37 ` [PATCH 01/17] powerpc: Add new hvcall constants to support PFO Kent Yoder
2012-03-21 21:38 ` Kent Yoder [this message]
2012-03-21 21:38 ` [PATCH 03/17] powerpc: Add PFO support to the VIO bus Kent Yoder
2012-03-21 21:38 ` [PATCH 04/17] hwrng: pseries - PFO-based hwrng driver Kent Yoder
2012-03-21 21:39 ` [PATCH 05/17] pseries: Enabled the PFO-based RNG accelerator Kent Yoder
2012-03-22 9:55 ` Anton Blanchard
2012-03-21 21:39 ` [PATCH 06/17] powerpc: crypto: AES-CBC mode routines for nx encryption Kent Yoder
2012-03-21 21:39 ` [PATCH 07/17] powerpc: crypto: AES-CCM " Kent Yoder
2012-03-21 21:40 ` [PATCH 08/17] powerpc: crypto: AES-CTR " Kent Yoder
2012-03-21 21:40 ` [PATCH 09/17] powerpc: crypto: AES-ECB " Kent Yoder
2012-03-21 21:40 ` [PATCH 10/17] powerpc: crypto: AES-GCM " Kent Yoder
2012-03-21 21:40 ` [PATCH 11/17] powerpc: crypto: AES-XCBC " Kent Yoder
2012-03-21 21:40 ` [PATCH 12/17] powerpc: crypto: SHA256 hash " Kent Yoder
2012-03-21 21:40 ` [PATCH 13/17] powerpc: crypto: SHA512 " Kent Yoder
2012-03-21 21:41 ` [PATCH 14/17] powerpc: crypto: nx driver code supporting " Kent Yoder
2012-03-21 22:15 ` Greg KH
2012-03-22 1:50 ` Benjamin Herrenschmidt
2012-03-22 2:57 ` Benjamin Herrenschmidt
2012-03-22 3:39 ` Greg KH
2012-03-22 5:39 ` Benjamin Herrenschmidt
2012-03-21 21:41 ` [PATCH 15/17] powerpc: crypto: sysfs routines and docs for the nx device driver Kent Yoder
2012-03-21 22:11 ` Greg KH
2012-03-21 22:46 ` Kent Yoder
2012-03-21 21:41 ` [PATCH 16/17] powerpc: crypto: Build files " Kent Yoder
2012-03-21 21:41 ` [PATCH 17/17] powerpc: crypto: enable the PFO-based encryption device Kent Yoder
2012-03-22 17:17 ` [PATCH 00/17] Platform Facilities Option and crypto accelerator driver Kumar Gala
2012-03-22 19:08 ` Kent Yoder
2012-03-23 16:06 ` Kumar Gala
2012-03-26 16:10 ` Kent Yoder
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=1332365890.3858.26.camel@key-ThinkPad-W510 \
--to=key@linux.vnet.ibm.com \
--cc=linux-crypto@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linuxppc-dev@lists.ozlabs.org \
--cc=rcj@linux.vnet.ibm.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