1. 09 2月, 2012 1 次提交
    • O
      rpmsg: add virtio-based remote processor messaging bus · bcabbcca
      Ohad Ben-Cohen 提交于
      Add a virtio-based inter-processor communication bus, which enables
      kernel drivers to communicate with entities, running on remote
      processors, over shared memory using a simple messaging protocol.
      
      Every pair of AMP processors share two vrings, which are used to send
      and receive the messages over shared memory.
      
      The header of every message sent on the rpmsg bus contains src and dst
      addresses, which make it possible to multiplex several rpmsg channels on
      the same vring.
      
      Every rpmsg channel is a device on this bus. When a channel is added,
      and an appropriate rpmsg driver is found and probed, it is also assigned
      a local rpmsg address, which is then bound to the driver's callback.
      
      When inbound messages carry the local address of a bound driver,
      its callback is invoked by the bus.
      
      This patch provides a kernel interface only; user space interfaces
      will be later exposed by kernel users of this rpmsg bus.
      
      Designed with Brian Swetland <swetland@google.com>.
      Signed-off-by: NOhad Ben-Cohen <ohad@wizery.com>
      Acked-by: Rusty Russell <rusty@rustcorp.com.au> (virtio_ids.h)
      Cc: Brian Swetland <swetland@google.com>
      Cc: Arnd Bergmann <arnd@arndb.de>
      Cc: Grant Likely <grant.likely@secretlab.ca>
      Cc: Tony Lindgren <tony@atomide.com>
      Cc: Russell King <linux@arm.linux.org.uk>
      Cc: Andrew Morton <akpm@linux-foundation.org>
      Cc: Greg KH <greg@kroah.com>
      Cc: Stephen Boyd <sboyd@codeaurora.org>
      bcabbcca
  2. 09 1月, 2012 1 次提交
  3. 22 11月, 2011 1 次提交
  4. 26 8月, 2011 2 次提交
  5. 11 5月, 2011 1 次提交
    • R
      bcma: add Broadcom specific AMBA bus driver · 8369ae33
      Rafał Miłecki 提交于
      Broadcom has released cards based on a new AMBA-based bus type. From a
      programming point of view, this new bus type differs from AMBA and does
      not use AMBA common registers. It also differs enough from SSB. We
      decided that a new bus driver is needed to keep the code clean.
      
      In its current form, the driver detects devices present on the bus and
      registers them in the system. It allows registering BCMA drivers for
      specified bus devices and provides them basic operations. The bus driver
      itself includes two important bus managing drivers: ChipCommon core
      driver and PCI(c) core driver. They are early used to allow correct
      initialization.
      
      Currently code is limited to supporting buses on PCI(e) devices, however
      the driver is designed to be used also on other hosts. The host
      abstraction layer is implemented and already used for PCI(e).
      
      Support for PCI(e) hosts is working and seems to be stable (access to
      80211 core was tested successfully on a few devices). We can still
      optimize it by using some fixed windows, but this can be done later
      without affecting any external code. Windows are just ranges in MMIO
      used for accessing cores on the bus.
      
      Cc: Greg KH <greg@kroah.com>
      Cc: Michael Büsch <mb@bu3sch.de>
      Cc: Larry Finger <Larry.Finger@lwfinger.net>
      Cc: George Kashperko <george@znau.edu.ua>
      Cc: Arend van Spriel <arend@broadcom.com>
      Cc: linux-arm-kernel@lists.infradead.org
      Cc: Russell King <rmk@arm.linux.org.uk>
      Cc: Arnd Bergmann <arnd@arndb.de>
      Cc: Andy Botting <andy@andybotting.com>
      Cc: linuxdriverproject <devel@linuxdriverproject.org>
      Cc: linux-kernel@vger.kernel.org <linux-kernel@vger.kernel.org>
      Signed-off-by: NRafał Miłecki <zajec5@gmail.com>
      Signed-off-by: NJohn W. Linville <linville@tuxdriver.com>
      8369ae33
  6. 19 5月, 2010 1 次提交
  7. 18 5月, 2010 1 次提交
  8. 03 4月, 2010 1 次提交
  9. 23 9月, 2009 2 次提交
    • A
      spi: prefix modalias with "spi:" · e0626e38
      Anton Vorontsov 提交于
      This makes it consistent with other buses (platform, i2c, vio, ...).  I'm
      not sure why we use the prefixes, but there must be a reason.
      
      This was easy enough to do it, and I did it.
      Signed-off-by: NAnton Vorontsov <avorontsov@ru.mvista.com>
      Cc: David Brownell <dbrownell@users.sourceforge.net>
      Cc: David Woodhouse <dwmw2@infradead.org>
      Cc: Grant Likely <grant.likely@secretlab.ca>
      Cc: Jean Delvare <khali@linux-fr.org>
      Cc: Ben Dooks <ben-linux@fluff.org>
      Cc: Benjamin Herrenschmidt <benh@kernel.crashing.org>
      Cc: Dmitry Torokhov <dtor@mail.ru>
      Cc: Samuel Ortiz <sameo@openedhand.com>
      Cc: "John W. Linville" <linville@tuxdriver.com>
      Acked-by: NMike Frysinger <vapier.adi@gmail.com>
      Signed-off-by: NAndrew Morton <akpm@linux-foundation.org>
      Signed-off-by: NLinus Torvalds <torvalds@linux-foundation.org>
      e0626e38
    • A
      spi: add support for device table matching · 75368bf6
      Anton Vorontsov 提交于
      With this patch spi drivers can use standard spi_driver.id_table and
      MODULE_DEVICE_TABLE() mechanisms to bind against the devices.  Just like
      we do with I2C drivers.
      
      This is useful when a single driver supports several variants of devices
      but it is not possible to detect them in run-time (like non-JEDEC chips
      probing in drivers/mtd/devices/m25p80.c), and when platform_data usage is
      overkill.
      
      This patch also makes life a lot easier on OpenFirmware platforms, since
      with OF we extensively use proper device IDs in modaliases.
      Signed-off-by: NAnton Vorontsov <avorontsov@ru.mvista.com>
      Cc: David Brownell <dbrownell@users.sourceforge.net>
      Cc: David Woodhouse <dwmw2@infradead.org>
      Cc: Grant Likely <grant.likely@secretlab.ca>
      Cc: Jean Delvare <khali@linux-fr.org>
      Cc: Ben Dooks <ben-linux@fluff.org>
      Cc: Benjamin Herrenschmidt <benh@kernel.crashing.org>
      Signed-off-by: NAndrew Morton <akpm@linux-foundation.org>
      Signed-off-by: NLinus Torvalds <torvalds@linux-foundation.org>
      75368bf6
  10. 25 3月, 2009 1 次提交
    • E
      platform: introduce module id table for platform devices · 57fee4a5
      Eric Miao 提交于
      Now platform_device is being widely used on SoC processors where the
      peripherals are attached to the system bus, which is simple enough.
      
      However, silicon IPs for these SoCs are usually shared heavily across
      a family of processors, even products from different companies.  This
      makes the original simple driver name based matching insufficient, or
      simply not straight-forward.
      
      Introduce a module id table for platform devices, and makes it clear
      that a platform driver is able to support some shared IP and handle
      slight differences across different platforms (by 'driver_data').
      Module alias is handled automatically when a MODULE_DEVICE_TABLE()
      is defined.
      
      To not disturb the current platform drivers too much, the matched id
      entry is recorded and can be retrieved by platform_get_device_id().
      Signed-off-by: NEric Miao <eric.miao@marvell.com>
      Cc: Kay Sievers <kay.sievers@vrfy.org>
      Cc: Ben Dooks <ben-linux@fluff.org>
      Signed-off-by: NGreg Kroah-Hartman <gregkh@suse.de>
      57fee4a5
  11. 28 1月, 2009 1 次提交
  12. 29 10月, 2008 1 次提交
  13. 15 10月, 2008 1 次提交
  14. 13 10月, 2008 1 次提交
    • D
      Automatic MODULE_ALIAS() for DMI match tables. · d945b697
      David Woodhouse 提交于
      This makes modpost handle MODULE_DEVICE_TABLE(dmi, xxxx).
      
      I had to change the string pointers in the match table to char arrays,
      and picked a size of 79 bytes almost at random -- do we need to make it
      bigger than that? I was a bit concerned about the 'bloat' this
      introduces into the match tables, but they should all be __initdata so
      it shouldn't matter too much.
      
      (Actually, modpost does go through the relocations and look at most of
      them; it wouldn't be impossible to make it handle string pointers -- but
      doesn't seem to be worth the effort, since they're __initdata).
      Signed-off-by: NDavid Woodhouse <David.Woodhouse@intel.com>
      d945b697
  15. 30 7月, 2008 1 次提交
  16. 14 7月, 2008 2 次提交
  17. 26 5月, 2008 1 次提交
  18. 30 4月, 2008 1 次提交
    • J
      i2c: Add support for device alias names · d2653e92
      Jean Delvare 提交于
      Based on earlier work by Jon Smirl and Jochen Friedrich.
      
      This patch allows new-style i2c chip drivers to have alias names using
      the official kernel aliasing system and MODULE_DEVICE_TABLE(). At this
      point, the old i2c driver binding scheme (driver_name/type) is still
      supported.
      Signed-off-by: NJean Delvare <khali@linux-fr.org>
      Cc: Jochen Friedrich <jochen@scram.de>
      Cc: Jon Smirl <jonsmirl@gmail.com>
      Cc: Kay Sievers <kay.sievers@vrfy.org>
      d2653e92
  19. 06 2月, 2008 1 次提交
  20. 23 10月, 2007 1 次提交
    • R
      Virtio interface · ec3d41c4
      Rusty Russell 提交于
      This attempts to implement a "virtual I/O" layer which should allow
      common drivers to be efficiently used across most virtual I/O
      mechanisms.  It will no-doubt need further enhancement.
      
      The virtio drivers add buffers to virtio queues; as the buffers are consumed
      the driver "interrupt" callbacks are invoked.
      
      There is also a generic implementation of config space which drivers can query
      to get setup information from the host.
      Signed-off-by: NRusty Russell <rusty@rustcorp.com.au>
      Cc: Dor Laor <dor.laor@qumranet.com>
      Cc: Arnd Bergmann <arnd@arndb.de>
      ec3d41c4
  21. 14 10月, 2007 1 次提交
    • J
      i2c: Kill struct i2c_device_id · cee37ae4
      Jean Delvare 提交于
      I2C devices do not have any form of ID as PCI or USB devices have.
      No driver uses "MODULE_DEVICE_TABLE(i2c, ...)" because it doesn't
      make sense. So we can get rid of struct i2c_device_id and the
      associated support code.
      Signed-off-by: NJean Delvare <khali@linux-fr.org>
      Cc: Greg KH <greg@kroah.com>
      cee37ae4
  22. 11 10月, 2007 1 次提交
  23. 24 9月, 2007 1 次提交
  24. 18 8月, 2007 1 次提交
  25. 24 7月, 2007 1 次提交
  26. 03 5月, 2007 1 次提交
    • S
      kbuild: remove dependency on input.h from file2alias · dc24f0e7
      Sam Ravnborg 提交于
      Almost all definitions used by file2alias was already
      present in mod_devicetable.h.
      Added the last definition and killed the input.h usage.
      
      The errornous include was pointed out
      by: Jan Engelhardt <jengelh@linux01.gwdg.de>
      Signed-off-by: NSam Ravnborg <sam@ravnborg.org>
      Cc: Jan Engelhardt <jengelh@linux01.gwdg.de>
      Cc: Deepak Saxena <dsaxena@plexity.net>
      dc24f0e7
  27. 17 2月, 2007 2 次提交
  28. 27 9月, 2006 1 次提交
    • M
      [PATCH] EISA bus MODALIAS attributes support · 07563c71
      Michael Tokarev 提交于
      Add modalias attribute support for the almost forgotten now EISA bus and
      (at least some) EISA-aware modules.
      
      The modalias entry looks like (for an 3c509 NIC):
      
       eisa:sTCM5093
      
      and the in-module alias like:
      
       eisa:sTCM5093*
      
      The patch moves struct eisa_device_id declaration from include/linux/eisa.h
      to include/linux/mod_devicetable.h (so that the former now #includes the
      latter), adds proper MODULE_DEVICE_TABLE(eisa, ...) statements for all
      drivers with EISA IDs I found (some drivers already have that DEVICE_TABLE
      declared), and adds recognision of __mod_eisa_device_table to
      scripts/mod/file2alias.c so that proper modules.alias will be generated.
      
      There's no support for /lib/modules/$kver/modules.eisamap, as it's not used
      by any existing tools, and because with in-kernel modalias mechanism those
      maps are obsolete anyway.
      
      The rationale for this patch is:
      
       a) to make EISA bus to act as other busses with modalias
          support, to unify driver loading
      
       b) to foget about EISA finally - with this patch, kernel
          (who still supports EISA) will be the only one who knows
          how to choose the necessary drivers for this bus ;)
      
      [akpm@osdl.org: fix the kbuild bit]
      Signed-off-by: NMichael Tokarev <mjt@tls.msk.ru>
      Cc: Rusty Russell <rusty@rustcorp.com.au>
      Cc: Randy Dunlap <rdunlap@xenotime.net>
      Acked-the-net-bits-by: NJeff Garzik <jeff@garzik.org>
      Acked-the-tulip-bit-by: NValerie Henson <val_henson@linux.intel.com>
      Cc: James Bottomley <James.Bottomley@steeleye.com>
      Signed-off-by: NAndrew Morton <akpm@osdl.org>
      Signed-off-by: NLinus Torvalds <torvalds@osdl.org>
      07563c71
  29. 20 9月, 2006 1 次提交
    • M
      [S390] zcrypt adjunct processor bus. · 1534c382
      Martin Schwidefsky 提交于
      Add a bus for the adjunct processor interface. Up to 64 devices can
      be connect to the ap bus interface, each device with 16 domains. That
      makes 1024 message queues. The interface is asynchronous, the answer
      to a message sent to a queue needs to be received at some later point
      in time. Unfortunately the interface does not provide interrupts when
      a message reply is pending. So the ap bus needs to implement some
      fancy polling, each active queue is polled once per 1/HZ second or
      continuously if an idle cpus exsists and the poll thread is activ
      (see poll_thread parameter).
      
      The ap bus uses the sysfs path /sys/bus/ap and has two bus attributes,
      ap_domain and config_time. The ap_domain selects one of the 16 domains
      to be used for this system. This limits the maximum number of ap devices
      to 64. The config_time attribute contains the number of seconds between
      two ap bus scans to find new devices.
      
      The ap bus uses the modalias entries of the form "ap:tN" to autoload
      the ap driver for hardware type N. Currently known types are:
      3 - PCICC, 4 - PCICA, 5 - PCIXCC, 6 - CEX2A and 7 - CEX2C.
      Signed-off-by: NCornelia Huck <cornelia.huck@de.ibm.com>
      Signed-off-by: NRalph Wuerthner <rwuerthn@de.ibm.com>
      Signed-off-by: NMartin Schwidefsky <schwidefsky@de.ibm.com>
      1534c382
  30. 26 4月, 2006 1 次提交
  31. 29 10月, 2005 1 次提交
  32. 02 10月, 2005 1 次提交
  33. 26 9月, 2005 1 次提交
  34. 30 8月, 2005 2 次提交
    • S
      [PATCH] Make MODULE_DEVICE_TABLE work for vio devices · fb120da6
      Stephen Rothwell 提交于
      Make MODULE_DEVICE_TABLE work for vio devices.
      Signed-off-by: NStephen Rothwell <sfr@canb.auug.org.au>
      Signed-off-by: NPaul Mackerras <paulus@samba.org>
      fb120da6
    • A
      [PATCH] mod_devicetable.h fixes · 9e2d3cd3
      Al Viro 提交于
       * ieee1394_device_id has kernel_ulong_t field after an odd number of
         __u32 ones.  Since mod_devicetable.h is included both from kernel and
         from host build helper, we may be in trouble if we are building on
         32bit host for 64bit target - userland sees unsigned long long,
         kernel sees unsigned long and while their sizes match, alignments
         might not.  Fixed by forcing alignment.  Fortunately, almost nobody
         else needs that - the rest of such fields is naturally aligned as it
         is.
      
       * of_device_id has void * in it.  Host userland helpers need
         kernel_ulong_t instead, since their void * might have nothing to do
         with the kernel one.  Fixed in the same way it's done for similar
         problems in pcmcia_device_id (ifdef __KERNEL__).
      
       * pcmcia_device_id has the same problem as ieee1394_device_id.  Fixed
         the same way.
      Signed-off-by: NAl Viro <viro@parcelfarce.linux.theplanet.co.uk>
      Signed-off-by: NLinus Torvalds <torvalds@osdl.org>
      9e2d3cd3
  35. 07 7月, 2005 1 次提交