Re: [linux-nics] [PATCHv3 2/3] list: Fix order of arguments for hlist_add_after(_rcu)
On Sat, 2014-06-07 at 18:40 +0200, Ken Helias wrote: > From: Ken Helias > > All other add functions for lists have the new item as first argument > and the > position where it is added as second argument. This was changed for no > good > reason in this function and makes using it unnecessary confusing. > > The name was changed to let old code generate a compile errors instead > of > using the wrong parameter order. > > Signed-off-by: Ken Helias > Cc: Linux NICS > Cc: "Paul E. McKenney" > Cc: dri-de...@lists.freedesktop.org > Cc: e1000-de...@lists.sourceforge.net > Cc: net...@vger.kernel.org > Cc: de...@driverdev.osuosl.org > Cc: linux-fsde...@vger.kernel.org > Cc: b.a.t.m@lists.open-mesh.org > Cc: bri...@lists.linux-foundation.org For the Intel driver changes... Acked-by: Jeff Kirsher > --- > Patch based on "Add linux-next specific files for 20140606" > > v3: > renamed from hlist_add_after* to hlist_add_behind > > v2: > Splitted into two patches > reduced number of Cc > > Documentation/RCU/whatisRCU.txt | 2 +- > drivers/gpu/drm/drm_hashtab.c| 2 +- > drivers/net/ethernet/intel/i40e/i40e_ethtool.c | 2 +- > drivers/net/ethernet/intel/ixgbe/ixgbe_ethtool.c | 2 +- > drivers/staging/lustre/lustre/libcfs/hash.c | 4 ++-- > fs/namespace.c | 2 +- > fs/notify/inode_mark.c | 2 +- > fs/notify/vfsmount_mark.c| 2 +- > include/linux/list.h | 4 ++-- > include/linux/rculist.h | 8 > net/batman-adv/fragmentation.c | 2 +- > net/bridge/br_multicast.c| 2 +- > net/ipv4/fib_trie.c | 2 +- > net/ipv6/addrlabel.c | 2 +- > net/xfrm/xfrm_policy.c | 4 ++-- > 15 files changed, 21 insertions(+), 21 deletions(-) signature.asc Description: This is a digitally signed message part ___ devel mailing list de...@linuxdriverproject.org http://driverdev.linuxdriverproject.org/mailman/listinfo/driverdev-devel
[PATCH V2] Staging:tidspbridge Fix minor checkpatch.pl warning.
From: Adithya Krishnamurthy Fixed checkpatch "WARNING: Missing a blank line after declarations" Signed-off-by: Adithya Krishnamurthy --- drivers/staging/tidspbridge/core/chnl_sm.c |1 + drivers/staging/tidspbridge/core/io_sm.c |1 + drivers/staging/tidspbridge/core/tiomap3430.c|2 ++ drivers/staging/tidspbridge/core/tiomap_io.c |2 ++ drivers/staging/tidspbridge/core/wdt.c |1 + drivers/staging/tidspbridge/dynload/cload.c |7 +++ drivers/staging/tidspbridge/dynload/reloc.c |2 ++ drivers/staging/tidspbridge/pmgr/chnl.c |1 + drivers/staging/tidspbridge/rmgr/dbdcd.c |1 + drivers/staging/tidspbridge/rmgr/drv_interface.c |2 ++ drivers/staging/tidspbridge/rmgr/nldr.c |1 + drivers/staging/tidspbridge/rmgr/node.c |2 ++ drivers/staging/tidspbridge/rmgr/proc.c |3 +++ 13 files changed, 26 insertions(+) diff --git a/drivers/staging/tidspbridge/core/chnl_sm.c b/drivers/staging/tidspbridge/core/chnl_sm.c index 16fa346..c855992 100644 --- a/drivers/staging/tidspbridge/core/chnl_sm.c +++ b/drivers/staging/tidspbridge/core/chnl_sm.c @@ -486,6 +486,7 @@ int bridge_chnl_get_info(struct chnl_object *chnl_obj, { int status = 0; struct chnl_object *pchnl = (struct chnl_object *)chnl_obj; + if (channel_info != NULL) { if (pchnl) { /* Return the requested information: */ diff --git a/drivers/staging/tidspbridge/core/io_sm.c b/drivers/staging/tidspbridge/core/io_sm.c index c2829aa..42f94e1 100644 --- a/drivers/staging/tidspbridge/core/io_sm.c +++ b/drivers/staging/tidspbridge/core/io_sm.c @@ -249,6 +249,7 @@ int bridge_io_create(struct io_mgr **io_man, int bridge_io_destroy(struct io_mgr *hio_mgr) { int status = 0; + if (hio_mgr) { /* Free IO DPC object */ tasklet_kill(&hio_mgr->dpc_tasklet); diff --git a/drivers/staging/tidspbridge/core/tiomap3430.c b/drivers/staging/tidspbridge/core/tiomap3430.c index 8945b4e..bf952ef 100644 --- a/drivers/staging/tidspbridge/core/tiomap3430.c +++ b/drivers/staging/tidspbridge/core/tiomap3430.c @@ -1057,6 +1057,7 @@ static int bridge_brd_mem_copy(struct bridge_dev_context *dev_ctxt, u32 total_bytes = ul_num_bytes; u8 host_buf[BUFFERSIZE]; struct bridge_dev_context *dev_context = dev_ctxt; + while (total_bytes > 0 && !status) { copy_bytes = total_bytes > BUFFERSIZE ? BUFFERSIZE : total_bytes; @@ -1094,6 +1095,7 @@ static int bridge_brd_mem_write(struct bridge_dev_context *dev_ctxt, struct bridge_dev_context *dev_context = dev_ctxt; u32 ul_remain_bytes = 0; u32 ul_bytes = 0; + ul_remain_bytes = ul_num_bytes; while (ul_remain_bytes > 0 && !status) { ul_bytes = diff --git a/drivers/staging/tidspbridge/core/tiomap_io.c b/drivers/staging/tidspbridge/core/tiomap_io.c index f53ed98..2836467 100644 --- a/drivers/staging/tidspbridge/core/tiomap_io.c +++ b/drivers/staging/tidspbridge/core/tiomap_io.c @@ -176,6 +176,7 @@ int write_dsp_data(struct bridge_dev_context *dev_context, struct cfg_hostres *resources = dev_context->resources; int status = 0; u32 base1, base2, base3; + base1 = OMAP_DSP_MEM1_SIZE; base2 = OMAP_DSP_MEM2_BASE - OMAP_DSP_MEM1_BASE; base3 = OMAP_DSP_MEM3_BASE - OMAP_DSP_MEM1_BASE; @@ -229,6 +230,7 @@ int write_ext_dsp_data(struct bridge_dev_context *dev_context, u32 ul_shm_offset_virt = 0; struct cfg_hostres *host_res = dev_context->resources; bool trace_load = false; + temp_byte1 = 0x0; temp_byte2 = 0x0; diff --git a/drivers/staging/tidspbridge/core/wdt.c b/drivers/staging/tidspbridge/core/wdt.c index c7ee467..b19f887 100644 --- a/drivers/staging/tidspbridge/core/wdt.c +++ b/drivers/staging/tidspbridge/core/wdt.c @@ -33,6 +33,7 @@ static struct dsp_wdt_setting dsp_wdt; void dsp_wdt_dpc(unsigned long data) { struct deh_mgr *deh_mgr; + dev_get_deh_mgr(dev_get_first(), &deh_mgr); if (deh_mgr) bridge_deh_notify(deh_mgr, DSP_WDTOVERFLOW, 0); diff --git a/drivers/staging/tidspbridge/dynload/cload.c b/drivers/staging/tidspbridge/dynload/cload.c index 9d54744..83f2106 100644 --- a/drivers/staging/tidspbridge/dynload/cload.c +++ b/drivers/staging/tidspbridge/dynload/cload.c @@ -160,6 +160,7 @@ int dynamic_load_module(struct dynamic_loader_stream *module, if (!dl_state.dload_errcount) { /* fix up entry point address */ unsigned sref = dl_state.dfile_hdr.df_entry_secn - 1; + if (sref < dl_state.allocated_secn_count) dl_state.dfile_hdr.df_entrypt += dl_state.ldr_sections[sref].run_addr; @@ -269,6 +270,7 @@ dynamic_open_m
[PATCH v2 25/26] staging: rtl8188eu: Remove unused function nat25_handle_frame()
Signed-off-by: navin patidar --- V2: Restore sequence of source code compilation, sequence was changed by v1 of this patch. drivers/staging/rtl8188eu/core/rtw_br_ext.c| 61 drivers/staging/rtl8188eu/include/recv_osdep.h |1 - 2 files changed, 62 deletions(-) diff --git a/drivers/staging/rtl8188eu/core/rtw_br_ext.c b/drivers/staging/rtl8188eu/core/rtw_br_ext.c index 9d9e89a..70b8f07 100644 --- a/drivers/staging/rtl8188eu/core/rtw_br_ext.c +++ b/drivers/staging/rtl8188eu/core/rtw_br_ext.c @@ -1030,67 +1030,6 @@ int nat25_db_handle(struct adapter *priv, struct sk_buff *skb, int method) return -1; } -int nat25_handle_frame(struct adapter *priv, struct sk_buff *skb) -{ - if (!(skb->data[0] & 1)) { - int is_vlan_tag = 0, i, retval = 0; - unsigned short vlan_hdr = 0; - unsigned short protocol; - - protocol = be16_to_cpu(*((__be16 *)(skb->data + 2 * ETH_ALEN))); - if (protocol == ETH_P_8021Q) { - is_vlan_tag = 1; - vlan_hdr = *((unsigned short *)(skb->data+ETH_ALEN*2+2)); - for (i = 0; i < 6; i++) - *((unsigned short *)(skb->data+ETH_ALEN*2+2-i*2)) = *((unsigned short *)(skb->data+ETH_ALEN*2-2-i*2)); - skb_pull(skb, 4); - } - - if (!priv->ethBrExtInfo.nat25_disable) { - spin_lock_bh(&priv->br_ext_lock); - /* -* This function look up the destination network address from -* the NAT2.5 database. Return value = -1 means that the -* corresponding network protocol is NOT support. -*/ - if (!priv->ethBrExtInfo.nat25sc_disable && - (be16_to_cpu(*((__be16 *)(skb->data+ETH_ALEN*2))) == ETH_P_IP) && - !memcmp(priv->scdb_ip, skb->data+ETH_HLEN+16, 4)) { - memcpy(skb->data, priv->scdb_mac, ETH_ALEN); - - spin_unlock_bh(&priv->br_ext_lock); - } else { - spin_unlock_bh(&priv->br_ext_lock); - - retval = nat25_db_handle(priv, skb, NAT25_LOOKUP); - } - } else { - if (((be16_to_cpu(*((__be16 *)(skb->data+ETH_ALEN*2))) == ETH_P_IP) && - !memcmp(priv->br_ip, skb->data+ETH_HLEN+16, 4)) || - ((be16_to_cpu(*((__be16 *)(skb->data+ETH_ALEN*2))) == ETH_P_ARP) && - !memcmp(priv->br_ip, skb->data+ETH_HLEN+24, 4))) { - /* for traffic to upper TCP/IP */ - retval = nat25_db_handle(priv, skb, NAT25_LOOKUP); - } - } - - if (is_vlan_tag) { - skb_push(skb, 4); - for (i = 0; i < 6; i++) - *((unsigned short *)(skb->data+i*2)) = *((unsigned short *)(skb->data+4+i*2)); - *((__be16 *)(skb->data+ETH_ALEN*2)) = __constant_htons(ETH_P_8021Q); - *((unsigned short *)(skb->data+ETH_ALEN*2+2)) = vlan_hdr; - } - - if (retval == -1) { - /* DEBUG_ERR("NAT25: Lookup fail!\n"); */ - return -1; - } - } - - return 0; -} - #define SERVER_PORT67 #define CLIENT_PORT68 #define DHCP_MAGIC 0x63825363 diff --git a/drivers/staging/rtl8188eu/include/recv_osdep.h b/drivers/staging/rtl8188eu/include/recv_osdep.h index a4fd957..a52a696 100644 --- a/drivers/staging/rtl8188eu/include/recv_osdep.h +++ b/drivers/staging/rtl8188eu/include/recv_osdep.h @@ -46,7 +46,6 @@ int rtw_os_recvbuf_resource_alloc(struct adapter *adapt, struct recv_buf *buf); void rtw_os_read_port(struct adapter *padapter, struct recv_buf *precvbuf); void rtw_init_recv_timer(struct recv_reorder_ctrl *preorder_ctrl); -int nat25_handle_frame(struct adapter *priv, struct sk_buff *skb); int _netdev_open(struct net_device *pnetdev); int netdev_open(struct net_device *pnetdev); int netdev_close(struct net_device *pnetdev); -- 1.7.10.4 ___ devel mailing list de...@linuxdriverproject.org http://driverdev.linuxdriverproject.org/mailman/listinfo/driverdev-devel
[PATCH 2/2] Staging: speakup: ERROR: Fix macro parenthesis.
Signed-off-by: Choi Gi-yong --- drivers/staging/speakup/speakup_acntpc.c | 5 - 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/drivers/staging/speakup/speakup_acntpc.c b/drivers/staging/speakup/speakup_acntpc.c index 31f952b..f70b698 100644 --- a/drivers/staging/speakup/speakup_acntpc.c +++ b/drivers/staging/speakup/speakup_acntpc.c @@ -35,7 +35,7 @@ #include "speakup_acnt.h" /* local header file for Accent values */ #define DRV_VERSION "2.10" -#define PROCSPEECH '\r' +#define PROCSPEECH ('\r') static int synth_probe(struct spk_synth *synth); static void accent_release(void); @@ -152,8 +152,10 @@ static inline bool synth_full(void) static const char *synth_immediate(struct spk_synth *synth, const char *buf) { u_char ch; + while ((ch = *buf)) { int timeout = SPK_XMITR_TIMEOUT; + if (ch == '\n') ch = PROCSPEECH; if (synth_full()) @@ -257,6 +259,7 @@ static int synth_probe(struct spk_synth *synth) { unsigned int port_val = 0; int i = 0; + pr_info("Probing for %s.\n", synth->long_name); if (port_forced) { speakup_info.port_tts = port_forced; -- 1.9.1 ___ devel mailing list de...@linuxdriverproject.org http://driverdev.linuxdriverproject.org/mailman/listinfo/driverdev-devel
Re: [PATCH 2/2] Staging: speakup: ERROR: Fix macro parenthesis.
It looks like this patch is adding blank lines not parenthesis like the subject says. regards, dan carpenter On Sun, Jun 08, 2014 at 11:12:57PM +0900, Choi Gi-yong wrote: > Signed-off-by: Choi Gi-yong > --- > drivers/staging/speakup/speakup_acntpc.c | 5 - > 1 file changed, 4 insertions(+), 1 deletion(-) > > diff --git a/drivers/staging/speakup/speakup_acntpc.c > b/drivers/staging/speakup/speakup_acntpc.c > index 31f952b..f70b698 100644 > --- a/drivers/staging/speakup/speakup_acntpc.c > +++ b/drivers/staging/speakup/speakup_acntpc.c > @@ -35,7 +35,7 @@ > #include "speakup_acnt.h" /* local header file for Accent values */ > > #define DRV_VERSION "2.10" > -#define PROCSPEECH '\r' > +#define PROCSPEECH ('\r') > > static int synth_probe(struct spk_synth *synth); > static void accent_release(void); > @@ -152,8 +152,10 @@ static inline bool synth_full(void) > static const char *synth_immediate(struct spk_synth *synth, const char *buf) > { > u_char ch; > + > while ((ch = *buf)) { > int timeout = SPK_XMITR_TIMEOUT; > + > if (ch == '\n') > ch = PROCSPEECH; > if (synth_full()) > @@ -257,6 +259,7 @@ static int synth_probe(struct spk_synth *synth) > { > unsigned int port_val = 0; > int i = 0; > + > pr_info("Probing for %s.\n", synth->long_name); > if (port_forced) { > speakup_info.port_tts = port_forced; > -- > 1.9.1 > > ___ > devel mailing list > de...@linuxdriverproject.org > http://driverdev.linuxdriverproject.org/mailman/listinfo/driverdev-devel ___ devel mailing list de...@linuxdriverproject.org http://driverdev.linuxdriverproject.org/mailman/listinfo/driverdev-devel
[PATCH] staging: bcm: nvm.c: Cleaning up a array that is filled incompletely
Hi I think someone missed the count sizeof type in memcpy. I'm no expert on this code. But I wonder if also the the next for loop wrong? It will fill with 0XFF00 but it is not a complete 0X you're looking for? So something like: memset(&Buff[sigOffset], 0xFF, MAX_RW_SIZE * sizeof(PCHAR)); Rickard Strandqvist (1): MY_FIL_NAMN Cleaning up a array that is filled incompletely drivers/staging/bcm/nvm.c |4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) -- 1.7.10.4 ___ devel mailing list de...@linuxdriverproject.org http://driverdev.linuxdriverproject.org/mailman/listinfo/driverdev-devel
[PATCH] staging: bcm: nvm.c: Cleaning up a array that is filled incompletely
Array 'SigBuff' is filled incompletely. Someone forget to multiply for the sizeof type. This was partly found using a static code analysis program called cppcheck. Signed-off-by: Rickard Strandqvist --- drivers/staging/bcm/nvm.c |4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/drivers/staging/bcm/nvm.c b/drivers/staging/bcm/nvm.c index 63be3be..d56ca3b 100644 --- a/drivers/staging/bcm/nvm.c +++ b/drivers/staging/bcm/nvm.c @@ -3591,7 +3591,7 @@ int BcmCopyISO(struct bcm_mini_adapter *Adapter, struct bcm_flash2x_copy_section if (IsThisHeaderSector == TRUE) { /* If this is header sector write 0x at the sig time and in last write sig */ - memcpy(SigBuff, Buff + sigOffset, MAX_RW_SIZE); + memcpy(SigBuff, Buff + sigOffset, sizeof(SigBuff)); for (i = 0; i < MAX_RW_SIZE; i++) *(Buff + sigOffset + i) = 0xFF; @@ -3704,7 +3704,7 @@ int BcmCopyISO(struct bcm_mini_adapter *Adapter, struct bcm_flash2x_copy_section if (IsThisHeaderSector == TRUE) { /* If this is header sector write 0x at the sig time and in last write sig */ - memcpy(SigBuff, Buff + sigOffset, MAX_RW_SIZE); + memcpy(SigBuff, Buff + sigOffset, sizeof(SigBuff)); for (i = 0; i < MAX_RW_SIZE; i++) *(Buff + sigOffset + i) = 0xFF; -- 1.7.10.4 ___ devel mailing list de...@linuxdriverproject.org http://driverdev.linuxdriverproject.org/mailman/listinfo/driverdev-devel
Re: [PATCH 2/2] gpio: gpiolib: set gpiochip_remove retval to void
On Fri, May 30, 2014 at 08:16:59PM +0200, Lars-Peter Clausen wrote: > On 05/30/2014 07:33 PM, David Daney wrote: > >On 05/30/2014 04:39 AM, Geert Uytterhoeven wrote: > >>On Fri, May 30, 2014 at 1:30 PM, abdoulaye berthe > >>wrote: > >>>--- a/drivers/gpio/gpiolib.c > >>>+++ b/drivers/gpio/gpiolib.c > >>>@@ -1263,10 +1263,9 @@ static void gpiochip_irqchip_remove(struct > >>>gpio_chip *gpiochip); > >>> * > >>> * A gpio_chip with any GPIOs still requested may not be removed. > >>> */ > >>>-int gpiochip_remove(struct gpio_chip *chip) > >>>+void gpiochip_remove(struct gpio_chip *chip) > >>> { > >>> unsigned long flags; > >>>- int status = 0; > >>> unsignedid; > >>> > >>> acpi_gpiochip_remove(chip); > >>>@@ -1278,24 +1277,15 @@ int gpiochip_remove(struct gpio_chip *chip) > >>> of_gpiochip_remove(chip); > >>> > >>> for (id = 0; id < chip->ngpio; id++) { > >>>- if (test_bit(FLAG_REQUESTED, &chip->desc[id].flags)) { > >>>- status = -EBUSY; > >>>- break; > >>>- } > >>>- } > >>>- if (status == 0) { > >>>- for (id = 0; id < chip->ngpio; id++) > >>>- chip->desc[id].chip = NULL; > >>>- > >>>- list_del(&chip->list); > >>>+ if (test_bit(FLAG_REQUESTED, &chip->desc[id].flags)) > >>>+ panic("gpio: removing gpiochip with gpios still > >>>requested\n"); > >> > >>panic? > > > >NACK to the patch for this reason. The strongest thing you should do here > >is WARN. > > > >That said, I am not sure why we need this whole patch set in the first place. > > Well, what currently happens when you remove a device that is a > provider of a gpio_chip which is still in use, is that the kernel > crashes. Probably with a rather cryptic error message. So this patch > doesn't really change the behavior, but makes it more explicit what > is actually wrong. And even if you replace the panic() by a WARN() > it will again just crash slightly later. > > This is a design flaw in the GPIO subsystem that needs to be fixed. Surely then the best way is to error out to the module unload and stop the driver being unloaded? -- Ben Dooks, b...@fluff.org, http://www.fluff.org/ben/ Large Hadron Colada: A large Pina Colada that makes the universe disappear. ___ devel mailing list de...@linuxdriverproject.org http://driverdev.linuxdriverproject.org/mailman/listinfo/driverdev-devel
[PATCH] checkpatch: fix complex macro false positive for escaped constant char
A single escaped constant char is not a complex macro. Signed-off-by: Joe Perches --- On Sun, 2014-06-08 at 23:12 +0900, Choi Gi-yong wrote: > diff --git a/drivers/staging/speakup/speakup_acntpc.c > b/drivers/staging/speakup/speakup_acntpc.c [] > @@ -35,7 +35,7 @@ [] > -#define PROCSPEECH '\r' > +#define PROCSPEECH ('\r') checkpatch false positive, doesn't need parenthesis scripts/checkpatch.pl | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/scripts/checkpatch.pl b/scripts/checkpatch.pl index 010b18e..ba92493 100755 --- a/scripts/checkpatch.pl +++ b/scripts/checkpatch.pl @@ -3757,7 +3757,7 @@ sub process { $dstat !~ /^(?:$Ident|-?$Constant),$/ && # 10, // foo(), $dstat !~ /^(?:$Ident|-?$Constant);$/ && # foo(); $dstat !~ /^[!~-]?(?:$Lval|$Constant)$/ && # 10 // foo() // !foo // ~foo // -foo // foo->bar // foo.bar->baz - $dstat !~ /^'X'$/ && # character constants + $dstat !~ /^'X'$/ && $dstat !~ /^'XX'$/ && # character constants $dstat !~ /$exceptions/ && $dstat !~ /^\.$Ident\s*=/ && # .foo = $dstat !~ /^(?:\#\s*$Ident|\#\s*$Constant)\s*$/ && # stringification #foo ___ devel mailing list de...@linuxdriverproject.org http://driverdev.linuxdriverproject.org/mailman/listinfo/driverdev-devel
Re: [PATCH v3 00/05] staging: Emma Mobile USB driver and KZM9D board code V3
On Sat, Jun 7, 2014 at 12:39 AM, Greg KH wrote: > On Fri, Jun 06, 2014 at 07:44:08PM +0900, Magnus Damm wrote: >> staging: Emma Mobile USB driver and KZM9D board code V3 >> >> [PATCH v3 01/05] staging: emxx_udc: Add Emma Mobile USB Gadget driver >> [PATCH v3 02/05] staging: emxx_udc: I/O memory and IRQ resource support >> [PATCH v3 03/05] staging: emxx_udc: Add TODO file >> [PATCH v3 04/05] staging: board: Initial board staging support >> [PATCH v3 05/05] staging: board: kzm9d: Board staging support for emxx_udc >> >> This patch series is V3 of the old USB Gadget driver for Emma Mobile >> that gets slightly adjusted to make use of the platform device interface >> which in turn is used to add USB Gadget support to the KZM9D board. >> >> Two separate staging components are included in this series: >> 1) the emxx_udc driver - from out-of-tree Android 2.6.35.7 >> 2) board staging support for KZM9D - platform device for DT-only KZM9D >> >> The two components above will be used to continously improve the driver >> and board integration code until the driver can be moved out of staging >> and/or DT bindings are available so the board staging platform device code >> can be replaced with a DT node. >> >> Changes since V2: >> - Added CONFIG_OF_ADDRESS dependency for the board staging bits >> >> Changes since V1: >> - Added TODO file for emxx_udc >> - Broke out board staging base support, included TODO file >> - Added code to avoid registering platform device if DT node exists >> - Modified KZM9D board code build condition to use SoC Kconfig entry >> >> Many thanks to Dan Carpenter, Geert Uytterhoeven, Greg KH and >> Paul Bolle for feedback! >> >> Please let me know if you would like me to rebase this code somehow. > > At quick glance, this looks good. I'll queue it up after 3.16-rc1 is > out as it's too late for this merge window. Thanks, Greg! This sounds perfect to me! Cheers, / magnus ___ devel mailing list de...@linuxdriverproject.org http://driverdev.linuxdriverproject.org/mailman/listinfo/driverdev-devel