openrisc: Makefile: append "-D__linux__" to KBUILD_CFLAGS

Need append "_D__linux__" to KBUILD_CFLAGS, just like some of another
architectures have done, or 'allmodconfig' can not pass compiling.

The related error:

    CC [M]  fs/coda/psdev.o
  In file included from include/linux/coda.h:65:0,
                   from fs/coda/psdev.c:45:
  include/uapi/linux/coda.h:221:2: error: expected specifier-qualifier-list before 'u_quad_t'

The related compiler information:

  [root@dhcp122 ~]# /usr/local/bin/or32-linux-gcc -v
  Using built-in specs.
  COLLECT_GCC=/usr/local/bin/or32-linux-gcc
  COLLECT_LTO_WRAPPER=/usr/local/libexec/gcc/or32-linux/4.5.1-or32-1.0rc1/lto-wrapper
  Target: or32-linux
  Configured with: ../gcc-openrisc/configure --target=or32-linux --disable-nls --enable-languages=c --without-headers --disable-shared --disable-threads --enable-werror=no
  Thread model: single
  gcc version 4.5.1-or32-1.0rc1 (GCC)

Signed-off-by: Chen Gang <gang.chen@asianux.com>
Signed-off-by: Jonas Bonn <jonas@southpole.se>
openrisc: include: asm: Kbuild: add default "vga.h"

Add default "vga.h", or compiling fails with 'allmodconfig'.

The related error:

    CC [M]  drivers/gpu/drm/drm_irq.o
  In file included from include/linux/vgaarb.h:34:0,
                   from drivers/gpu/drm/drm_irq.c:42:
  include/video/vga.h:22:21: fatal error: asm/vga.h: No such file or directory
  compilation terminated.
  make[3]: *** [drivers/gpu/drm/drm_irq.o] Error 1
  make[2]: *** [drivers/gpu/drm] Error 2
  make[1]: *** [drivers/gpu] Error 2
  make: *** [drivers] Error 2

Signed-off-by: Chen Gang <gang.chen@asianux.com>
Signed-off-by: Jonas Bonn <jonas@southpole.se>
openrisc: Refactor 16-bit constant relocation

arch/openrisc/kernel/module.c: In function 'apply_relocate_add':
arch/openrisc/kernel/module.c:50:13: warning: assignment from incompatible pointer type
arch/openrisc/kernel/module.c:54:13: warning: assignment from incompatible pointer type

Move the pointer increments to the dereference statements to avoid
incompatible pointer assignments, and remove superfluous casts.

Signed-off-by: Geert Uytterhoeven <geert@linux-m68k.org>
Signed-off-by: Jonas Bonn <jonas@southpole.se>
Blackfin: bfin_gpio: Use proper mask for comparing pfunc

For BF537_FAMILY, when offset != 1, the mask is 1.
Thus add proper mask for comparing pfunc with function.

Also has small refactor for better readability.
In portmux_setup(), it looks odd having "pmux &= ~(3 << 1);"
while in current code we do pmux |= (function << offset);.

Signed-off-by: Axel Lin <axel.lin@ingics.com>
Signed-off-by: Sonic Zhang <sonic.zhang@analog.com>
bf609: update default config for spi

Signed-off-by: Scott Jiang <scott.jiang.linux@gmail.com>
blackfin: adi gpio driver and pinctrl driver support

Remove gpio driver for new gpio controller on BF54x and BF60x.
Build the bfin_gpio driver only when other BF5xx processors are selected.
Replace the prefix of some gpio and peripheral functions with adi.
add portmux platform data in machine portmux.h

Signed-off-by: Sonic Zhang <sonic.zhang@analog.com>
Signed-off-by: Steven Miao <realmz6@gmail.com>
openrisc: Refresh or1ksim_defconfig for v3.12

Signed-off-by: Geert Uytterhoeven <geert@linux-m68k.org>
Signed-off-by: Jonas Bonn <jonas@southpole.se>
openrisc: Use the declarations provided by <asm/sections.h>

Openrisc's private vmlinux.h duplicates a few definitions that are already
provided by asm-generic/sections.h. The former is used by setup.c only,
while the latter is already used everywhere else.

Convert setup.c to use the generic version:
  - Include <asm/sections.h>,
  - Remove the (slightly different) extern declarations,
  - Remove the no longer needed address-of ('&') operators.

Signed-off-by: Geert Uytterhoeven <geert@linux-m68k.org>
Signed-off-by: Jonas Bonn <jonas@southpole.se>
openrisc: Remove unused declaration of __initramfs_start

Signed-off-by: Geert Uytterhoeven <geert@linux-m68k.org>
Signed-off-by: Jonas Bonn <jonas@southpole.se>
openrisc: Refactor or32_early_setup()

  - Change fdt pointer (passed from head.S) from unsigned int to void *,
    which allows to kill a cast, and makes it compatible with __dtb_start.
  - Use pr_info(),
  - Extract common part.

Signed-off-by: Geert Uytterhoeven <geert@linux-m68k.org>
Cc: linux@lists.openrisc.net
Signed-off-by: Jonas Bonn <jonas@southpole.se>
blackfin: pinctrl-adi2: code cleanup after using pinctrl-adi2

Signed-off-by: Steven Miao <realmz6@gmail.com>
blackfin: serial: Add serial port_fer and port_mux early platform resources.

The serial driver sets up port function manually in early platform probe stage
if the ADI GPIO2 driver is used. Remove the bfin_sport_uart early platform
devices.

Signed-off-by: Sonic Zhang <sonic.zhang@analog.com>
pm: use GFP_ATOMIC when pm core call this function

We shouldn't sleep in atomic sections.

Signed-off-by: Scott Jiang <scott.jiang.linux@gmail.com>
smp: bf561: and smb_wmb()/smp_rmb() at ipi send/receive

add smb_wmb()/smp_rmb() to keep cache coherent

Signed-off-by: Steven Miao <realmz6@gmail.com>
blackfin: fix build warning for unused variable

Signed-off-by: Steven Miao <realmz6@gmail.com>
drm: check for !kdev in drm_unplug_minor()

We moved minor deallocation to drm_dev_free() in:
  commit 8f6599da8e772fa8de54cdf98e9e03cbaf3946da
  Author: David Herrmann <dh.herrmann@gmail.com>
  Date:   Sun Oct 20 18:55:45 2013 +0200

      drm: delay minor destruction to drm_dev_free()

However, this causes a call to drm_unplug_minor(), which should just do
nothing as drm_dev_unregister() already called this.

But a separate patch caused kdev lifetime changes:
  commit 5bdebb183c9702a8c57a01dff09337be3de337a6
  Author: Dave Airlie <airlied@redhat.com>
  Date:   Fri Oct 11 14:07:25 2013 +1000

      drm/sysfs: sort out minor and connector device object lifetimes.

Thus making our dev_is_registered() call useles (and even segfault if it
is NULL). Replace it with a simple !kdev test and we're fine.

Reported-by: Huax Lu <huax.lu@intel.com>
Reported-by: Daniel Vetter <daniel@ffwll.ch>
Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=71208
Tested-by: lu hua <huax.lu@intel.com>
Reviewed-by: Daniel Vetter <daniel.vetter@ffwll.ch>
Signed-off-by: David Herrmann <dh.herrmann@gmail.com>
Signed-off-by: Dave Airlie <airlied@gmail.com>
Merge tag 'for-3.13' of git://git.openrisc.net/~jonas/linux

Pull OpenRISC updates from Jonas Bonn:
 - small cleanups to make allmodconfig pass
 - defconfig refresh
 - a handful of code sanitization patches

* tag 'for-3.13' of git://git.openrisc.net/~jonas/linux:
  openrisc: Refactor or32_early_setup()
  openrisc: Remove unused declaration of __initramfs_start
  openrisc: Use the declarations provided by <asm/sections.h>
  openrisc: Refresh or1ksim_defconfig for v3.12
  openrisc: Refactor 16-bit constant relocation
  openrisc: include: asm: Kbuild: add default "vga.h"
  openrisc: Makefile: append "-D__linux__" to KBUILD_CFLAGS
Merge tag 'blackfin-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/realmz6/blackfin-linux

Pull blackfin updates from Steven Miao:
 "Blackfin gpio changes, add adi pinctrl driver, and bug fixes"

* tag 'blackfin-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/realmz6/blackfin-linux:
  blackfin: fix build warning for unused variable
  smp: bf561: and smb_wmb()/smp_rmb() at ipi send/receive
  pm: use GFP_ATOMIC when pm core call this function
  blackfin: serial: Add serial port_fer and port_mux early platform resources.
  blackfin: pinctrl-adi2: code cleanup after using pinctrl-adi2
  blackfin: adi gpio driver and pinctrl driver support
  bf609: update default config for spi
  Blackfin: bfin_gpio: Use proper mask for comparing pfunc
Merge branch 'drm-next' of git://people.freedesktop.org/~airlied/linux

Pull drm regression fix from Dave Airlie:
 "Forgot this one liner was necessary to fix module reload issues
  introduced earlier in the drm pull"

* 'drm-next' of git://people.freedesktop.org/~airlied/linux:
  drm: check for !kdev in drm_unplug_minor()