/*
* Pin controller and GPIO driver for Amlogic Meson8.
*
* Copyright (C) 2014 Beniamino Galvani <b.galvani@gmail.com>
*
* This program is free software; you can redistribute it and/or
* modify it under the terms of the GNU General Public License
* version 2 as published by the Free Software Foundation.
*
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
#include <dt-bindings/gpio/meson8-gpio.h>
#include "pinctrl-meson.h"
#define AO_OFF 120
static const struct pinctrl_pin_desc meson8_cbus_pins[] = {
MESON_PIN(GPIOX_0, 0),
MESON_PIN(GPIOX_1, 0),
MESON_PIN(GPIOX_2, 0),
MESON_PIN(GPIOX_3, 0),
MESON_PIN(GPIOX_4, 0),
MESON_PIN(GPIOX_5, 0),
MESON_PIN(GPIOX_6, 0),
MESON_PIN(GPIOX_7, 0),
MESON_PIN(GPIOX_8, 0),
MESON_PIN(GPIOX_9, 0),
MESON_PIN(GPIOX_10, 0),
MESON_PIN(GPIOX_11, 0),
MESON_PIN(GPIOX_12, 0),
MESON_PIN(GPIOX_13, 0),
MESON_PIN(GPIOX_14, 0),
MESON_PIN(GPIOX_15, 0),
MESON_PIN(GPIOX_16, 0),
MESON_PIN(GPIOX_17, 0),
MESON_PIN(GPIOX_18, 0),
MESON_PIN(GPIOX_19, 0),
MESON_PIN(GPIOX_20, 0),
MESON_PIN(GPIOX_21, 0),
MESON_PIN(GPIOY_0, 0),
MESON_PIN(GPIOY_1, 0),
MESON_PIN(GPIOY_2, 0),
MESON_PIN(GPIOY_3, 0),
MESON_PIN(GPIOY_4, 0),
MESON_PIN(GPIOY_5, 0),
MESON_PIN(GPIOY_6, 0),
MESON_PIN(GPIOY_7, 0),
MESON_PIN(GPIOY_8, 0),
MESON_PIN(GPIOY_9, 0),
MESON_PIN(GPIOY_10, 0),
MESON_PIN(GPIOY_11, 0),
MESON_PIN(GPIOY_12, 0),
MESON_PIN(GPIOY_13, 0),
MESON_PIN(GPIOY_14, 0),
MESON_PIN(GPIOY_15, 0),
MESON_PIN(GPIOY_16, 0),
MESON_PIN(GPIODV_0, 0),
MESON_PIN(GPIODV_1, 0),
MESON_PIN(GPIODV_2, 0),
MESON_PIN(GPIODV_3, 0),
MESON_PIN(GPIODV_4, 0),
MESON_PIN(GPIODV_5, 0),
MESON_PIN(GPIODV_6, 0),
MESON_PIN(GPIODV_7, 0),
MESON_PIN(GPIODV_8, 0),
MESON_PIN(GPIODV_9, 0),
MESON_PIN(GPIODV_10, 0),
MESON_PIN(GPIODV_11, 0),
MESON_PIN(GPIODV_12, 0),
MESON_PIN(GPIODV_13, 0),
MESON_PIN(GPIODV_14, 0),
MESON_PIN(GPIODV_15, 0),
MESON_PIN(GPIODV_16, 0),
MESON_PIN(GPIODV_17, 0),
MESON_PIN(GPIODV_18, 0),
MESON_PIN(GPIODV_19, 0),
MESON_PIN(GPIODV_20, 0),
MESON_PIN(GPIODV_21, 0),
MESON_PIN(GPIODV_22, 0),
MESON_PIN(GPIODV_23, 0),
MESON_PIN(GPIODV_24, 0),
MESON_PIN(GPIODV_25, 0),
MESON_PIN(GPIODV_26, 0),
MESON_PIN(GPIODV_27, 0),
MESON_PIN(GPIODV_28, 0),
MESON_PIN(GPIODV_29, 0),
MESON_PIN(GPIOH_0, 0),
MESON_PIN(GPIOH_1, 0),
MESON_PIN(GPIOH_2, 0),
MESON_PIN(GPIOH_3, 0),
MESON_PIN(GPIOH_4, 0),
MESON_PIN(GPIOH_5, 0),
MESON_PIN(GPIOH_6, 0),
MESON_PIN(GPIOH_7, 0),
MESON_PIN(GPIOH_8, 0),
MESON_PIN(GPIOH_9, 0),
MESON_PIN(GPIOZ_0, 0),
MESON_PIN(GPIOZ_1, 0),
MESON_PIN(GPIOZ_2, 0),
MESON_PIN(GPIOZ_3, 0),
MESON_PIN(GPIOZ_4, 0),
MESON_PIN(GPIOZ_5, 0),
MESON_PIN(GPIOZ_6, 0),
MESON_PIN(GPIOZ_7, 0),
MESON_PIN(GPIOZ_8, 0),
MESON_PIN(GPIOZ_9, 0),
MESON_PIN(GPIOZ_10, 0),
MESON_PIN(GPIOZ_11, 0),
MESON_PIN(GPIOZ_12, 0),
MESON_PIN(GPIOZ_13, 0),
MESON_PIN(GPIOZ_14, 0),
MESON_PIN(CARD_0, 0),
MESON_PIN(CARD_1, 0),
MESON_PIN(CARD_2, 0),
MESON_PIN(CARD_3, 0),
MESON_PIN(CARD_4, 0),
MESON_PIN(CARD_5, 0),
MESON_PIN(CARD_6, 0),
MESON_PIN(BOOT_0, 0),
MESON_PIN(BOOT_1, 0),
MESON_PIN(BOOT_2, 0),
MESON_PIN(BOOT_3, 0),
MESON_PIN(BOOT_4, 0),
MESON_PIN(BOOT_5, 0),
M