Commit c91ef598 authored by David Gibson's avatar David Gibson Committed by Paul Mackerras

[POWERPC] More DCR native fixups

Getting BenH's new EMAC driver working on 440GP, I found some more
problems in the native mode paths of the new DCR code:
	- dcr_map() is supposed to return a dcr_host_t, but the native
version is a macro that doesn't expand to an expression.  With native
DCRs, dcr_host_t is an empty structure, so we just use a constructor
expression instead.
	- dcr_unmap() uses {} instead of the safer do {} while (0)
idiom to implement a no-op

Here's a fix.
Signed-off-by: default avatarDavid Gibson <dwg@au1.ibm.com>
Acked-by: default avatarBenjamin Herrenschmidt <benh@kernel.crashing.org>
Signed-off-by: default avatarPaul Mackerras <paulus@samba.org>
parent 087d7ecd
...@@ -26,8 +26,8 @@ typedef struct {} dcr_host_t; ...@@ -26,8 +26,8 @@ typedef struct {} dcr_host_t;
#define DCR_MAP_OK(host) (1) #define DCR_MAP_OK(host) (1)
#define dcr_map(dev, dcr_n, dcr_c) {} #define dcr_map(dev, dcr_n, dcr_c) ((dcr_host_t){})
#define dcr_unmap(host, dcr_n, dcr_c) {} #define dcr_unmap(host, dcr_n, dcr_c) do {} while (0)
#define dcr_read(host, dcr_n) mfdcr(dcr_n) #define dcr_read(host, dcr_n) mfdcr(dcr_n)
#define dcr_write(host, dcr_n, value) mtdcr(dcr_n, value) #define dcr_write(host, dcr_n, value) mtdcr(dcr_n, value)
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment