Merge remote-tracking branch 'regmap/topic/core' into regmap-next
This commit is contained in:
commit
e6353328ee
|
@ -61,9 +61,9 @@ static int regmap_mmio_regbits_check(size_t reg_bits)
|
|||
}
|
||||
}
|
||||
|
||||
static inline void regmap_mmio_count_check(size_t count)
|
||||
static inline void regmap_mmio_count_check(size_t count, u32 offset)
|
||||
{
|
||||
BUG_ON(count % 2 != 0);
|
||||
BUG_ON(count <= offset);
|
||||
}
|
||||
|
||||
static int regmap_mmio_gather_write(void *context,
|
||||
|
@ -120,7 +120,7 @@ static int regmap_mmio_write(void *context, const void *data, size_t count)
|
|||
struct regmap_mmio_context *ctx = context;
|
||||
u32 offset = ctx->reg_bytes + ctx->pad_bytes;
|
||||
|
||||
regmap_mmio_count_check(count);
|
||||
regmap_mmio_count_check(count, offset);
|
||||
|
||||
return regmap_mmio_gather_write(context, data, ctx->reg_bytes,
|
||||
data + offset, count - offset);
|
||||
|
|
|
@ -1615,6 +1615,9 @@ static int _regmap_raw_multi_reg_write(struct regmap *map,
|
|||
size_t pair_size = reg_bytes + pad_bytes + val_bytes;
|
||||
size_t len = pair_size * num_regs;
|
||||
|
||||
if (!len)
|
||||
return -EINVAL;
|
||||
|
||||
buf = kzalloc(len, GFP_KERNEL);
|
||||
if (!buf)
|
||||
return -ENOMEM;
|
||||
|
@ -1662,7 +1665,7 @@ static int _regmap_range_multi_paged_reg_write(struct regmap *map,
|
|||
int ret;
|
||||
int i, n;
|
||||
struct reg_default *base;
|
||||
unsigned int this_page;
|
||||
unsigned int this_page = 0;
|
||||
/*
|
||||
* the set of registers are not neccessarily in order, but
|
||||
* since the order of write must be preserved this algorithm
|
||||
|
|
Loading…
Reference in New Issue