• Simon Guinot's avatar
    gpio: add GPIO support for F71882FG and F71889F · 6c17aa01
    Simon Guinot authored
    This patch adds support for the GPIOs found on the Fintek super-I/O
    chips F71882FG and F71889F.
    
    A super-I/O is a legacy I/O controller embedded on x86 motherboards. It
    is used to connect the low-bandwidth devices. Among others functions the
    F71882FG/F71889F provides: a parallel port, two serial ports, a keyboard
    controller, an hardware monitoring controller and some GPIO pins.
    
    Note that this super-I/Os are embedded on some Atom-based LaCie NASes.
    The GPIOs are used to control the LEDs and the hard drive power.
    
    Changes since v3:
    - Use request_muxed_region to protect the I/O ports against concurrent
      accesses.
    
    Changes since v2:
    - Remove useless NULL setters for driver data.
    
    Changes since v1:
    - Enhance the commit message by describing what is a Super-I/O.
    - Use self-explanatory names for the GPIO register macros.
    - Add a comment to explain the platform device and driver registration.
    - Fix gpio_get when GPIO is configured in input mode. I only had
      the hardware to check this mode recently...
    Signed-off-by: default avatarSimon Guinot <simon.guinot@sequanux.org>
    Signed-off-by: default avatarLinus Walleij <linus.walleij@linaro.org>
    6c17aa01
gpio-f7188x.c 10.3 KB