diff options
author | Paul Cercueil <paul@crapouillou.net> | 2020-11-01 09:01:03 +0000 |
---|---|---|
committer | Linus Walleij <linus.walleij@linaro.org> | 2020-11-10 14:58:14 +0100 |
commit | bb42b59310ebc33ab73dddd9a075d24003d1adac (patch) | |
tree | a42faf1e5f5e835cf37b4e330c087341b8d2e177 /LICENSES | |
parent | 57972641810a97566ffd13e4be3f6a66d61eb3b5 (diff) |
pinctrl: ingenic: Get rid of repetitive data
Abuse the pin function pointer to store the pin function value directly,
when all the pins of a group have the same function value. Now when the
pointer value is <= 3 (unsigned), the pointer value is used as the pin
function; otherwise it is used as a regular pointer.
This drastically reduces the number of pin function tables needed, and
drops .data usage by about 2 KiB. Additionally, the few pin function
tables that are still around now contain u8 instead of int, since the
largest number that will be stored is 3.
Signed-off-by: Paul Cercueil <paul@crapouillou.net>
Tested-by: 周琰杰 (Zhou Yanjie) <zhouyanjie@wanyeetech.com>
Link: https://lore.kernel.org/r/20201101090104.5088-2-paul@crapouillou.net
Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
Diffstat (limited to 'LICENSES')
0 files changed, 0 insertions, 0 deletions