1. 18 Dec, 2013 2 commits
    • Aaron Sierra's avatar
      vme_user: Update API to work in mixed environments · 66a01f11
      Aaron Sierra authored
      This patch updates the vme_master and vme_slave structures to use
      types with well defined size and to prevent the compiler from
      inserting padding (between enable and vme_addr for one).
      
      The original vme_master and vme_slave structs would be different
      sizes and have different layouts depending on whether they were built
      for a 32-bit or 64-bit system.
      
      On x86 it is possible to have a 32-bit userspace and a 64-bit kernel.
      In this type of environment, the userspace and kernel vme_user APIs
      would disagree and prevent ioctls from executing (based on ioctl
      signatures from _IOR and _IOW).
      Signed-off-by: default avatarAaron Sierra <asierra@xes-inc.com>
      Acked-by: default avatarMartyn Welch <martyn.welch@ge.com>
      Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@linuxfoundation.org>
      66a01f11
    • Aaron Sierra's avatar
      vme: Convert VME core to register as a subsystem · c326cc02
      Aaron Sierra authored
      Previously, VME bridge support was treated as any other driver (using
      module_init() macro), but if VME bridge and vme_user (staging) drivers
      were compiled into the kernel, then vme_user would attempt to register
      itself before the VME core support had been loaded. This would result
      in a kernel panic.
      
      The load order of these built-in drivers is based on the order in which
      drivers/staging/vme and driver/vme are compiled.
      
      This patch changes the VME core driver to use the subsys_initcall()
      macro which ensures that it is loaded before all other VME drivers
      regardless of the order in which they are compiled.
      Tested-by: default avatarAaron Sierra <asierra@xes-inc.com>
      Signed-off-by: default avatarMartyn Welch <martyn.welch@ge.com>
      Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@linuxfoundation.org>
      c326cc02
  2. 17 Dec, 2013 38 commits