From: Artem Bityutskiy <artem.bityutskiy@linux.intel.com>
To: "Uwe Kleine-König" <u.kleine-koenig@pengutronix.de>
Cc: Sascha Hauer <s.hauer@pengutronix.de>,
linux-mtd@lists.infradead.org,
linux-arm-kernel@lists.infradead.org
Subject: Re: [PATCH 1/2] mtd mxc_nand: use 32bit copy functions
Date: Fri, 29 Jun 2012 14:25:24 +0300 [thread overview]
Message-ID: <1340969124.3070.155.camel@sauron.fi.intel.com> (raw)
In-Reply-To: <20120627175234.GF18096@pengutronix.de>
[-- Attachment #1: Type: text/plain, Size: 1937 bytes --]
On Wed, 2012-06-27 at 19:52 +0200, Uwe Kleine-König wrote:
> I don't know about the sparse problems this introduces, but without this
> patch the mxc-nand driver is broken, so it should really go in before
> 3.5.
The problems, AFAIU, are that you cannot directly dereference __iomem
pointers, you always need to use helpers like 'readl()'. This patch
introduces the following warnings:
+drivers/mtd/nand/mxc_nand.c:281:33: warning: incorrect type in initializer (different address spaces) [sparse]
+drivers/mtd/nand/mxc_nand.c:281:33: expected unsigned int const volatile [usertype] *s [sparse]
+drivers/mtd/nand/mxc_nand.c:281:33: got void const volatile [noderef] <asn:2>*src [sparse]
+drivers/mtd/nand/mxc_nand.c:284 memcpy32_fromio() warn: side effect in macro '__raw_readl' doing 's++' [smatch]
+drivers/mtd/nand/mxc_nand.c:284:24: warning: incorrect type in argument 1 (different address spaces) [sparse]
+drivers/mtd/nand/mxc_nand.c:284:24: expected void const volatile [noderef] <asn:2>*<noident> [sparse]
+drivers/mtd/nand/mxc_nand.c:284:24: got unsigned int const volatile [usertype] * [sparse]
+drivers/mtd/nand/mxc_nand.c:290:27: warning: incorrect type in initializer (different address spaces) [sparse]
+drivers/mtd/nand/mxc_nand.c:290:27: expected unsigned int volatile [usertype] *t [sparse]
+drivers/mtd/nand/mxc_nand.c:290:27: got void volatile [noderef] <asn:2>*trg [sparse]
+drivers/mtd/nand/mxc_nand.c:294 memcpy32_toio() warn: side effect in macro '__raw_writel' doing 't++' [smatch]
+drivers/mtd/nand/mxc_nand.c:294:17: warning: incorrect type in argument 1 (different address spaces) [sparse]
+drivers/mtd/nand/mxc_nand.c:294:17: expected void const volatile [noderef] <asn:2>*<noident> [sparse]
+drivers/mtd/nand/mxc_nand.c:294:17: got unsigned int volatile [usertype] * [sparse]
The "volitile" should be also removed.
--
Best Regards,
Artem Bityutskiy
[-- Attachment #2: This is a digitally signed message part --]
[-- Type: application/pgp-signature, Size: 836 bytes --]
WARNING: multiple messages have this Message-ID (diff)
From: artem.bityutskiy@linux.intel.com (Artem Bityutskiy)
To: linux-arm-kernel@lists.infradead.org
Subject: [PATCH 1/2] mtd mxc_nand: use 32bit copy functions
Date: Fri, 29 Jun 2012 14:25:24 +0300 [thread overview]
Message-ID: <1340969124.3070.155.camel@sauron.fi.intel.com> (raw)
In-Reply-To: <20120627175234.GF18096@pengutronix.de>
On Wed, 2012-06-27 at 19:52 +0200, Uwe Kleine-K?nig wrote:
> I don't know about the sparse problems this introduces, but without this
> patch the mxc-nand driver is broken, so it should really go in before
> 3.5.
The problems, AFAIU, are that you cannot directly dereference __iomem
pointers, you always need to use helpers like 'readl()'. This patch
introduces the following warnings:
+drivers/mtd/nand/mxc_nand.c:281:33: warning: incorrect type in initializer (different address spaces) [sparse]
+drivers/mtd/nand/mxc_nand.c:281:33: expected unsigned int const volatile [usertype] *s [sparse]
+drivers/mtd/nand/mxc_nand.c:281:33: got void const volatile [noderef] <asn:2>*src [sparse]
+drivers/mtd/nand/mxc_nand.c:284 memcpy32_fromio() warn: side effect in macro '__raw_readl' doing 's++' [smatch]
+drivers/mtd/nand/mxc_nand.c:284:24: warning: incorrect type in argument 1 (different address spaces) [sparse]
+drivers/mtd/nand/mxc_nand.c:284:24: expected void const volatile [noderef] <asn:2>*<noident> [sparse]
+drivers/mtd/nand/mxc_nand.c:284:24: got unsigned int const volatile [usertype] * [sparse]
+drivers/mtd/nand/mxc_nand.c:290:27: warning: incorrect type in initializer (different address spaces) [sparse]
+drivers/mtd/nand/mxc_nand.c:290:27: expected unsigned int volatile [usertype] *t [sparse]
+drivers/mtd/nand/mxc_nand.c:290:27: got void volatile [noderef] <asn:2>*trg [sparse]
+drivers/mtd/nand/mxc_nand.c:294 memcpy32_toio() warn: side effect in macro '__raw_writel' doing 't++' [smatch]
+drivers/mtd/nand/mxc_nand.c:294:17: warning: incorrect type in argument 1 (different address spaces) [sparse]
+drivers/mtd/nand/mxc_nand.c:294:17: expected void const volatile [noderef] <asn:2>*<noident> [sparse]
+drivers/mtd/nand/mxc_nand.c:294:17: got unsigned int volatile [usertype] * [sparse]
The "volitile" should be also removed.
--
Best Regards,
Artem Bityutskiy
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 836 bytes
Desc: This is a digitally signed message part
URL: <http://lists.infradead.org/pipermail/linux-arm-kernel/attachments/20120629/da941a49/attachment.sig>
next prev parent reply other threads:[~2012-06-29 11:25 UTC|newest]
Thread overview: 20+ messages / expand[flat|nested] mbox.gz Atom feed top
2012-05-25 14:22 [PATCH 1/2] mtd mxc_nand: use 32bit copy functions Sascha Hauer
2012-05-25 14:22 ` Sascha Hauer
2012-05-25 14:22 ` [PATCH 2/2] mtd mxc_nand: move ecc strengh setup before nand_scan_tail Sascha Hauer
2012-05-25 14:22 ` Sascha Hauer
2012-05-25 16:29 ` Mike Dunn
2012-05-25 16:29 ` Mike Dunn
2012-05-25 16:55 ` Artem Bityutskiy
2012-05-25 16:55 ` Artem Bityutskiy
2012-05-25 14:58 ` [PATCH 1/2] mtd mxc_nand: use 32bit copy functions Artem Bityutskiy
2012-05-25 14:58 ` Artem Bityutskiy
2012-05-25 14:59 ` Sascha Hauer
2012-05-25 14:59 ` Sascha Hauer
2012-06-29 11:34 ` Artem Bityutskiy
2012-06-29 11:34 ` Artem Bityutskiy
2012-06-27 17:52 ` Uwe Kleine-König
2012-06-27 17:52 ` Uwe Kleine-König
2012-06-29 11:25 ` Artem Bityutskiy [this message]
2012-06-29 11:25 ` Artem Bityutskiy
2012-06-29 11:28 ` Uwe Kleine-König
2012-06-29 11:28 ` Uwe Kleine-König
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=1340969124.3070.155.camel@sauron.fi.intel.com \
--to=artem.bityutskiy@linux.intel.com \
--cc=linux-arm-kernel@lists.infradead.org \
--cc=linux-mtd@lists.infradead.org \
--cc=s.hauer@pengutronix.de \
--cc=u.kleine-koenig@pengutronix.de \
/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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.