1. 11 May, 2015 5 commits
  2. 08 May, 2015 2 commits
    • Bryan O'Donoghue's avatar
      greybus: Support building greybus on host PC · 68fff960
      Bryan O'Donoghue authored
      Introduce INSTALL_MOD_PATH to allow for building and installing of the
      greybus modules from a different location.
      
      This lets you build the greybus modules on a PC and then install the
      modules to an SD card in the appropriate location relative to the SD such
      as /media/sdcard/lib/modules/version and subsequent running of depmod in
      the same location. If INSTALL_MOD_PATH isn't specified the default
      behaviour of installing and depmoding to /lib/modules/version is
      maintained.
      Signed-off-by: default avatarBryan O'Donoghue <bryan.odonoghue@linaro.org>
      Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@google.com>
      68fff960
    • John Stultz's avatar
      greybus: gb-audio: Add integrated greybus audio driver · a4749bbe
      John Stultz authored
      So here's the current greybus audio driver, which I
      wanted to send out for more serious review and
      consideration for merging.
      
      I've tried to integrate much of the feedback from the
      last round and most of the hotplug issues that I've found
      have been resolved. I've tested this via gbsim, and the
      Android ARA HAL layer seems to work with it.
      
      Mark has also successfully played audio with this driver,
      adding a few hacks to get the codec's i2c connection to
      probe.
      
      Current issues:
      * Hotplug problem - When gbsim is killed, or the module
        removed, the greybus driver gets stuck since the android
        mediaserver process is holding the audio device open.
        Killing the mediaserver allows things to clean up and
        allows greybus to accept new gbsim connections. I have
        a workaround patch to the soc-core.c logic which converts
        the snd_card_free() call to snd_card_free_when_closed()
        which allows the greybus connection cleanup to finish.
      
      Remaining todos:
      * Probably need to break apart the mgmt_setup function
        to integrate better with the constraint logic. I took
        a really basic stab at this, but more is probably
        needed.
      * Figure out how to properly find and tie in the
        codec's I2C bus-id to the driver.
      
      This code requires that the kernel support the following
      config options, which I've enabled in a separate kernel
      patch:
      	CONFIG_SND_SIMPLE_CARD
      	CONFIG_SND_SOC_SPDIF
      	CONFIG_SND_SOC_RT5645
      
      I really can't calim to be the sole author of this, since
      many many fixes and tweaks that have been folded in have
      come from Mark Greer. His analsysis and debugging is really
      what has made this dummy-framework driver evolve into an
      actual audio driver. So much credit and thanks to Mark!
      Signed-off-by: default avatarJohn Stultz <john.stultz@linaro.org>
      Signed-off-by: default avatarMark A. Greer <mgreer@animalcreek.com>
      Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@google.com>
      a4749bbe
  3. 07 May, 2015 3 commits
    • Alex Elder's avatar
      greybus: eliminate extra response flag definitions · 6d653370
      Alex Elder authored
      All protocols use the same value to distinguish between request and
      response message types.  This is a requirement.
      
      Use GB_MESSAGE_TYPE_RESPONSE rather than GB_OPERATION_TYPE_RESPONSE
      for the name of the flag used to distiguish between request and
      response messages.
      
      Get rid of the redundant response flag definitions that are
      associated with specific protocols.
      
      Describe the symbolic values as "operation types" rather than
      "message types" where they are defined.  The message type for a
      request is the same as the operation type; the message type for a
      response is the operation type OR'd with GB_MESSAGE_TYPE_RESPONSE.
      Signed-off-by: default avatarAlex Elder <elder@linaro.org>
      Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@google.com>
      6d653370
    • Alex Elder's avatar
      greybus: battery: use feature tag rather than kernel version · 5c58640d
      Alex Elder authored
      Conditionally define a new symbol DRIVER_OWNS_PSY_STRUCT, which is
      set in "kernel_ver.h" based on on the kernel version.  Use it to
      distinguish code used for kernels that differ in whether a power
      supply structure is owned by the driver, or by the power supply
      core.
      Signed-off-by: default avatarAlex Elder <elder@linaro.org>
      Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@google.com>
      5c58640d
    • Alex Elder's avatar
      greybus: battery: free struct on error in caller · 9ade6d31
      Alex Elder authored
      When a battery connection is initialized, a gb_battery structure for
      it is allocated in gb_battery_connection_init().  Currently that
      function ends by calling init_and_register(); in the event an error
      occurs, init_and_register() is responsible for freeing the allocated
      gb_battery structure.
      
      Make the code a bit better balanced by having the function that
      allocates the structure be responsible for freeing it in case of
      error.
      Signed-off-by: default avatarAlex Elder <elder@linaro.org>
      Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@google.com>
      9ade6d31
  4. 05 May, 2015 7 commits
  5. 01 May, 2015 6 commits
  6. 29 Apr, 2015 5 commits
  7. 17 Apr, 2015 2 commits
  8. 16 Apr, 2015 1 commit
  9. 10 Apr, 2015 3 commits
  10. 09 Apr, 2015 6 commits