aboutsummaryrefslogtreecommitdiffstats
path: root/tools/perf/util
diff options
context:
space:
mode:
authorHirosh Dabui <hirosh.dabui@snom.com>2011-01-25 23:05:26 +0100
committerKevin Hilman <khilman@ti.com>2011-02-28 14:53:19 -0800
commitc284d9fa48e1ad17bda142cfbb683c29a3b005a6 (patch)
treecb5c859edc302e99a2fef7aa7b634eb9c8039d4d /tools/perf/util
parentdavinci: da8xx/omap-l1x: add platform device for davinci-pcm-audio (diff)
downloadlinux-c284d9fa48e1ad17bda142cfbb683c29a3b005a6.tar.gz
linux-c284d9fa48e1ad17bda142cfbb683c29a3b005a6.zip
davinci: tnetv107x: fix register indexing for GPIOs numbers > 31
This patch fix a bug in the register indexing for GPIOs numbers > 31 to get the relevant hardware registers of tnetv107x to control the GPIOs. In the structure tnetv107x_gpio_regs: struct tnetv107x_gpio_regs { u32 idver; u32 data_in[3]; u32 data_out[3]; u32 direction[3]; u32 enable[3]; }; The GPIO hardware register addresses of tnetv107x are stored. The chip implements 3 registers of each entity to serve 96 GPIOs, each register provides a subset of 32 GPIOs. The driver provides these macros: gpio_reg_set_bit, gpio_reg_get_bit and gpio_reg_clear_bit. The bug implied the use of macros to access the relevant hardware register e.g. the driver code used the macro like this: 'gpio_reg_clear_bit(&reg->data_out, gpio)' But it has to be used like this: 'gpio_reg_clear_bit(reg->data_out, gpio)'. The different results are shown here: - &reg->data_out + 1 (it will add the full array size of data_out i.e. 12 bytes) - reg->data_out + 1 (it will increment only the size of data_out i.e. only 4 bytes) Acked-by: Cyril Chemparathy <cyril@ti.com> Signed-off-by: Hirosh Dabui <hirosh.dabui@snom.com> Signed-off-by: Kevin Hilman <khilman@ti.com>
Diffstat (limited to 'tools/perf/util')
0 files changed, 0 insertions, 0 deletions
Kees Cook1-1/+1 2025-07-25hfs: fix general protection fault in hfs_find_init()Viacheslav Dubeyko4-12/+51 2025-07-25hfs: fix slab-out-of-bounds in hfs_bnode_read()Viacheslav Dubeyko1-0/+92 2025-07-25hfsplus: fix slab-out-of-bounds in hfsplus_bnode_read()Viacheslav Dubeyko1-0/+92 2025-07-25hfsplus: fix slab-out-of-bounds read in hfsplus_uni2asc()Viacheslav Dubeyko1-0/+7 2025-07-25hfsplus: don't use BUG_ON() in hfsplus_create_attributes_file()Tetsuo Handa1-1/+5 2025-07-25hfsplus: don't set REQ_SYNC for hfsplus_submit_bio()Johannes Thumshirn1-4/+2 2025-07-25i2c: lpi2c: implement xfer_atomic callbackEmanuele Ghidoli1-38/+132 2025-07-25i2c: lpi2c: use readl_poll_timeout() for register pollingEmanuele Ghidoli1-49/+45 2025-07-25dt-bindings: i2c: i2c-rk3x: Allow use of a power-domainJonas Karlman1-0/+3 2025-07-25dt-bindings: i2c: exynos5: add samsung,exynos2200-hsi2c compatibleIvaylo Ivanov1-0/+1 2025-07-25i2c: lpi2c: convert to use secs_to_jiffies()Yuesong Li1-1/+1 2025-07-25i2c: st: Use min() to improve codeQianfeng Rong1-13/+6 2025-07-25dt-bindings: display: mediatek,dp: Allow DisplayPort AUX busAngeloGioacchino Del Regno1-0/+3 2025-07-25dt-bindings: fsl: convert fsl,vf610-mscm-ir.txt to yaml formatFrank Li2-30/+63