1. 05 Feb, 2018 3 commits
    • Greg Gallagher's avatar
      drivers/gpio: Allow for more then one rt gpio driver to be built and loaded at the same build · ecfb6814
      Greg Gallagher authored and Philippe Gerum's avatar Philippe Gerum committed
      Some SOCs will have two GPIO chips that require two independent drivers.  In my
      case I was working with the Zynq SOC and needed a driver for the gpios on the
      FPGA and a driver for the gpios available on the ARM core. This change allows
      for two rt gpio drivers to be built and loaded at the same time.
      The rt gpio driver will be renamed from xeno-gpio to the following:
      
      xeno-gpio-bcm2835.ko
      xeno-gpio-mxc.ko
      xeno-gpio-sun8i-h3.ko
      xeno-gpio-zynq7000.ko
      
      This also moves the gpio-core logic into the kernel image.
      ecfb6814
    • Greg Gallagher's avatar
      cobalt/rtdm: Handle device paths from the device tree that start with a forward slash · f53f8441
      Greg Gallagher authored and Philippe Gerum's avatar Philippe Gerum committed
      If the device name from the device tree starts with a forward slash (/) the
      rtdm device stores it in the registry including the forward slash.  When we
      go to use that device and do the registry lookup we use a relative path from
      /dev/rtdm which doesn't contain the forward slash and fails to find a match.
      Open won't return an error but IO calls will fail.  To fix this when we
      register an RTDM device skip the first character if it's a forward slash.
      
      In my case the path from the device tree is
              /amba_pl/gpio@41200000/gpio905
      which gets stored in the registry. When we want to use the device and look up
      the device path in the registry we use
              amba_pl/gpio@41200000/gpio905
      which won't find a match in the registry.
      
      Tested on Zynq7000 gpio drivers
      f53f8441
    • Greg Gallagher's avatar
      drivers/gpio: Add Xilinx AXI gpio driver · 64168979
      Greg Gallagher authored and Philippe Gerum's avatar Philippe Gerum committed
      64168979
  2. 27 Jan, 2018 1 commit
  3. 26 Jan, 2018 3 commits
  4. 23 Jan, 2018 4 commits
  5. 15 Jan, 2018 4 commits
    • Philippe Gerum's avatar
      cobalt/rtdm: fix semaphore wait mode for fd_cleanup thread · ac098c01
      Philippe Gerum authored
      This thread must wait for work in interruptible mode, does not wait
      for a device event. This fixes the bad process time accounting which
      otherwise would converge to 1.00 for an idle system when the Cobalt
      core is enabled.
      ac098c01
    • Philippe Gerum's avatar
      drivers/gpio: pass back allocated GPIO chip descriptor · 7ffd31e5
      Philippe Gerum authored
      rtdm_gpiochip_alloc() is a way to instantiate a single GPIO descriptor
      instead of mapping all GPIO controllers defined by the firmware which
      belong to a particular type. This routine is matched by
      rtdm_gpiochip_remove() for deallocation.
      
      We need the former to return a pointer to the allocated descriptor we
      may then pass to the latter.
      7ffd31e5
    • Philippe Gerum's avatar
      drivers/gpio: allow open coded IRQ handling · 8ba47091
      Philippe Gerum authored
      Some client code may want to deal with GPIO interrupt handling
      directly, without support for an irq_chip controller paired with the
      GPIO chip.
      
      Assume that a failure to retrieve the IRQ number associated to a pin
      means exactly that, offloading interrupt handling to an open coded
      implementation the client code should provide for.
      
      In parallel, introduce rtdm_gpiochip_post_event() for notifying the
      GPIO core from an incoming interrupt event on a given pin.
      8ba47091
    • Philippe Gerum's avatar
      drivers/gpio: expose GPIO chip allocation routine · 062ed8e1
      Philippe Gerum authored
      For creating a new RTDM-based GPIO chip descriptor (struct
      rtdm_gpio_chip), mapped to its regular counterpart (struct gpio_chip).
      062ed8e1
  6. 19 Dec, 2017 2 commits
    • Marek Vasut's avatar
      utils/can: Fix Makefile.am · cbc6b87b
      Marek Vasut authored and Philippe Gerum's avatar Philippe Gerum committed
      
      
      Prefix CPPFLAGS and LDFLAGS with AM_ to make automake actually
      use those and propagate external CPPFLAGS and LDFLAGS settings
      into the build.
      
      Signed-off-by: Marek Vasut's avatarMarek Vasut <marex@denx.de>
      cbc6b87b
    • Philippe Gerum's avatar
      boilerplate/bootstrap: dual-license the bootstrap source code · f18416cd
      Philippe Gerum authored
      lib/boilerplate/bootstrap.c is meant to be glued to the application
      executable for bootstrapping the Cobalt services automatically at load
      up.
      
      From the standpoint of its sole author (i.e. me), doing so adds no
      requirement with respect to the licensing terms of the containing
      application.
      
      Allow lib/boilerplate/bootstrap.c to be distributed under the terms of
      the MIT license to reflect this fact.
      f18416cd
  7. 10 Dec, 2017 2 commits
  8. 08 Dec, 2017 3 commits
  9. 05 Dec, 2017 3 commits
    • Greg Gallagher's avatar
      drivers/gpio: Add zynq-7000 rtdm gpio driver · 56f9dd3f
      Greg Gallagher authored and Philippe Gerum's avatar Philippe Gerum committed
      56f9dd3f
    • Greg Gallagher's avatar
      drivers/gpio: Request gpio at open() · 70f9d8f1
      Greg Gallagher authored and Philippe Gerum's avatar Philippe Gerum committed
      For the zynq platform (and possibly others in the future) we need to modify
      gpio-core to request gpio pins before using them. The open() function will
      now request a gpio and fail if it's already reserved. This should make
      the pin request transparent to the user. The ability to request and release
      pins is also available in an ioctrl message.  Tested on Microzed Zynq-7010
      platform and the raspberry pi 2 board.
      70f9d8f1
    • Greg Gallagher's avatar
      cobalt/rtdm: Split rtdm_fd_enter up · 03b70fea
      Greg Gallagher authored and Philippe Gerum's avatar Philippe Gerum committed
      split rtdm_fd_enter, move the functionality where we store the fd
      until after the open() call succeeds.  Calls where open() fail a fd is
      left in the tree even after the cleanup code is executed.  If this fd
      number is used again we will fail the call to open until a different
      fd is used.  This patch addresses this situation by not adding the fd
      into the tree until open has succeeded and the fd is valid.
      03b70fea
  10. 01 Dec, 2017 1 commit
  11. 25 Nov, 2017 1 commit
    • Philippe Gerum's avatar
      copperplate/heapobj-tlsf: fix private heap init · 7a038dfa
      Philippe Gerum authored
      TLSF's init_memory_pool() wants heaps to be larger than 4k on 64bit
      architectures, due to the increased size of the meta-data compared to
      their 32bit counterpart (struct tlsf).
      
      Use 8k as the minimum heap size instead of PAGE_SIZE in the pshared
      case, and make sure the main pool size amounts to at least 8k in the
      process-private case, so that init_memory_pool() never fails in
      heapobj_pkg_init_private().
      7a038dfa
  12. 22 Nov, 2017 1 commit
  13. 20 Nov, 2017 1 commit
  14. 19 Nov, 2017 5 commits
  15. 18 Nov, 2017 4 commits
  16. 17 Nov, 2017 2 commits