1. 19 Aug, 2018 26 commits
  2. 18 Aug, 2018 7 commits
  3. 09 Aug, 2018 1 commit
    • Crestez Dan Leonard's avatar
      regmap: Add regmap_noinc_read API · 74fe7b55
      Crestez Dan Leonard authored
      The regmap API usually assumes that bulk read operations will read a
      range of registers but some I2C/SPI devices have certain registers for
      which a such a read operation will return data from an internal FIFO
      instead. Add an explicit API to support bulk read without range semantics.
      
      Some linux drivers use regmap_bulk_read or regmap_raw_read for such
      registers, for example mpu6050 or bmi150 from IIO. This only happens to
      work because when caching is disabled a single regmap read op will map
      to a single bus read op (as desired). This breaks if caching is enabled and
      reg+1 happens to be a cacheable register.
      
      Without regmap support refactoring a driver to enable regmap caching
      requires separate I2C and SPI paths. This is exactly what regmap is
      supposed to help avoid.
      Suggested-by: default avatarJonathan Cameron <jic23@kernel.org>
      Signed-off-by: default avatarCrestez Dan Leonard <leonard.crestez@intel.com>
      Signed-off-by: default avatarStefan Popa <stefan.popa@analog.com>
      Signed-off-by: default avatarMark Brown <broonie@kernel.org>
      74fe7b55
  4. 03 Aug, 2018 2 commits
  5. 02 Aug, 2018 4 commits
    • Chao Yu's avatar
      staging: erofs: disable compiling temporarile · 156c3df8
      Chao Yu authored
      As Stephen Rothwell reported:
      
      "After merging the staging tree, today's linux-next build (x86_64
      allmodconfig) failed like this:
      
      drivers/staging/erofs/super.c: In function 'erofs_read_super':
      drivers/staging/erofs/super.c:343:17: error: 'MS_RDONLY' undeclared (first use in this function); did you mean 'IS_RDONLY'?
        sb->s_flags |= MS_RDONLY | MS_NOATIME;
                       ^~~~~~~~~
                       IS_RDONLY
      drivers/staging/erofs/super.c:343:17: note: each undeclared identifier is reported only once for each function it appears in
      drivers/staging/erofs/super.c:343:29: error: 'MS_NOATIME' undeclared (first use in this function); did you mean 'S_NOATIME'?
        sb->s_flags |= MS_RDONLY | MS_NOATIME;
                                   ^~~~~~~~~~
                                   S_NOATIME
      drivers/staging/erofs/super.c: In function 'erofs_mount':
      drivers/staging/erofs/super.c:501:10: warning: passing argument 5 of 'mount_bdev' makes integer from pointer without a cast [-Wint-conversion]
         &priv, erofs_fill_super);
                ^~~~~~~~~~~~~~~~
      In file included from include/linux/buffer_head.h:12:0,
                       from drivers/staging/erofs/super.c:14:
      include/linux/fs.h:2151:23: note: expected 'size_t {aka long unsigned int}' but argument is of type 'int (*)(struct super_block *, void *, int)'
       extern struct dentry *mount_bdev(struct file_system_type *fs_type,
                             ^~~~~~~~~~
      drivers/staging/erofs/super.c:500:9: error: too few arguments to function 'mount_bdev'
        return mount_bdev(fs_type, flags, dev_name,
               ^~~~~~~~~~
      In file included from include/linux/buffer_head.h:12:0,
                       from drivers/staging/erofs/super.c:14:
      include/linux/fs.h:2151:23: note: declared here
       extern struct dentry *mount_bdev(struct file_system_type *fs_type,
                             ^~~~~~~~~~
      drivers/staging/erofs/super.c: At top level:
      drivers/staging/erofs/super.c:518:20: error: initialization from incompatible pointer type [-Werror=incompatible-pointer-types]
        .mount          = erofs_mount,
                          ^~~~~~~~~~~
      drivers/staging/erofs/super.c:518:20: note: (near initialization for 'erofs_fs_type.mount')
      drivers/staging/erofs/super.c: In function 'erofs_remount':
      drivers/staging/erofs/super.c:630:12: error: 'MS_RDONLY' undeclared (first use in this function); did you mean 'IS_RDONLY'?
        *flags |= MS_RDONLY;
                  ^~~~~~~~~
                  IS_RDONLY
      drivers/staging/erofs/super.c: At top level:
      drivers/staging/erofs/super.c:640:16: error: initialization from incompatible pointer type [-Werror=incompatible-pointer-types]
        .remount_fs = erofs_remount,
                      ^~~~~~~~~~~~~
      
      Caused by various commits creating erofs in the staging tree interacting
      with various commits redoing the mount infrastructure in the vfs tree.
      
      I have disabed CONFIG_EROFS_FS for now:"
      
      The reason of compiling error is:
      
      Since -next collects and merges developing patches including common vfs
      stuff from multi-trees, but those patches didn't cover erofs, such as:
      
      ('vfs: Suppress MS_* flag defs within the kernel unless explicitly enabled")
      https://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs.git/commit/?h=for-next&id=109b45090d7d3ce2797bb1ef7f70eead5bfe0ff3
      
      ("vfs: Require specification of size of mount data for internal mounts")
      https://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs.git/commit/?h=for-next&id=0a191e4505a4f255e6513b49426213da69bf0e80
      
      Above vfs related patches has not been merged in staging tree, if we
      submit those erofs patches to staging mailing list and after including
      them in staging-{test,nexts} tree, it can easily cause compiling error.
      
      We worked out some patches to adjust those vfs change, but now we just
      submit them to -next tree temporarily to avoid compiling error.
      
      For potentail conflict in between erofs and vfs changes in incoming
      merge window, Stephen suggested that we can disable CONFIG_EROFS_FS
      temporarily to pass merge window, and after that we can do restore by
      reenabling CONFIG_EROFS_FS and applying those fixing patches. Also
      Greg confirmed this solution.
      
      So, let's disable compiling erofs for a while.
      Suggested-by: default avatarStephen Rothwell <sfr@canb.auug.org.au>
      Signed-off-by: default avatarGao Xiang <gaoxiang25@huawei.com>
      Reviewed-by: default avatarGao Xiang <gaoxiang25@huawei.com>
      Signed-off-by: default avatarChao Yu <yuchao0@huawei.com>
      Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@linuxfoundation.org>
      156c3df8
    • Todd Poynor's avatar
      staging: gasket: apex: enable power save mode by default · 025556d5
      Todd Poynor authored
      Set default value of allow_power_save parameter to enable power save
      mode, which is expected to be the state usually desired.
      Signed-off-by: default avatarMarty Faltesek <mfaltesek@google.com>
      Signed-off-by: default avatarTodd Poynor <toddpoynor@google.com>
      Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@linuxfoundation.org>
      025556d5
    • Todd Poynor's avatar
      staging: gasket: apex: drop reset type param · d9da1cbd
      Todd Poynor authored
      Apex doesn't implement different types of resets based on the reset type
      param passed through the gasket layer or from userspace via the
      gasket_reset ioctl.  The reset type is dropped from the gasket framework
      in a previous patch due to a lack of present need and non-conforming use
      of this parameter by the framework.  Drop the parameter from the apex
      driver as well.
      Signed-off-by: default avatarTodd Poynor <toddpoynor@google.com>
      Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@linuxfoundation.org>
      d9da1cbd
    • Todd Poynor's avatar
      staging: gasket: remove "reset type" param from framework · 1c65a2e2
      Todd Poynor authored
      The "type of reset" parameter to the gasket device reset APIs isn't
      required by the only gasket device submitted upstream, apex.
      
      The framework documents the param as private to the device driver and a
      pass-through at the gasket layer, but the gasket core calls the device
      driver with a hardcoded reset type of zero, which is not documented as
      having a predefined meaning.
      
      In light of all this, remove the reset type parameter from the
      framework.  Remove the reset ioctl reset type parameter, and bump the
      framework version number to reflect the interface change.
      Signed-off-by: default avatarTodd Poynor <toddpoynor@google.com>
      Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@linuxfoundation.org>
      1c65a2e2