Move gpio_debug from board to EC code

The gpio_debug() functionality depends on the ITE registers and not
anything board-specific.

Signed-off-by: Tim Crawford <tcrawford@system76.com>
This commit is contained in:
Tim Crawford
2023-01-18 16:30:39 -07:00
committed by Tim Crawford
parent f687000a4f
commit 59c386ec12
47 changed files with 59 additions and 880 deletions

View File

@ -1,7 +1,7 @@
// SPDX-License-Identifier: GPL-3.0-only
#include <board/gpio.h>
#include <common/debug.h>
#include <common/macro.h>
// clang-format off
struct Gpio __code ACIN_N = GPIO(B, 6);
@ -239,40 +239,3 @@ void gpio_init() {
// SERIRQ
GPCRM6 = GPIO_ALT;
}
#if GPIO_DEBUG
void gpio_debug_bank(
char *bank,
uint8_t data,
uint8_t mirror,
uint8_t pot,
volatile uint8_t *control
) {
for (char i = 0; i < 8; i++) {
DEBUG(
"%s%d:\n\tdata %d\n\tmirror %d\n\tpot %d\n\tcontrol %02X\n",
bank,
i,
(data >> i) & 1,
(mirror >> i) & 1,
(pot >> i) & 1,
*(control + i)
);
}
}
void gpio_debug(void) {
#define bank(BANK) gpio_debug_bank(#BANK, GPDR##BANK, GPDMR##BANK, GPOT##BANK, &GPCR##BANK##0)
bank(A);
bank(B);
bank(C);
bank(D);
bank(E);
bank(F);
bank(G);
bank(H);
bank(I);
bank(J);
#undef bank
}
#endif

View File

@ -6,7 +6,6 @@
#include <ec/gpio.h>
void gpio_init(void);
void gpio_debug(void);
// clang-format off
extern struct Gpio __code ACIN_N;

View File

@ -1,7 +1,7 @@
// SPDX-License-Identifier: GPL-3.0-only
#include <board/gpio.h>
#include <common/debug.h>
#include <common/macro.h>
// clang-format off
struct Gpio __code ACIN_N = GPIO(B, 0);
@ -243,40 +243,3 @@ void gpio_init() {
// SERIRQ
GPCRM6 = GPIO_ALT;
}
#if GPIO_DEBUG
void gpio_debug_bank(
char *bank,
uint8_t data,
uint8_t mirror,
uint8_t pot,
volatile uint8_t *control
) {
for (char i = 0; i < 8; i++) {
DEBUG(
"%s%d:\n\tdata %d\n\tmirror %d\n\tpot %d\n\tcontrol %02X\n",
bank,
i,
(data >> i) & 1,
(mirror >> i) & 1,
(pot >> i) & 1,
*(control + i)
);
}
}
void gpio_debug(void) {
#define bank(BANK) gpio_debug_bank(#BANK, GPDR##BANK, GPDMR##BANK, GPOT##BANK, &GPCR##BANK##0)
bank(A);
bank(B);
bank(C);
bank(D);
bank(E);
bank(F);
bank(G);
bank(H);
bank(I);
bank(J);
#undef bank
}
#endif

View File

@ -6,7 +6,6 @@
#include <ec/gpio.h>
void gpio_init(void);
void gpio_debug(void);
// clang-format off
extern struct Gpio __code ACIN_N;

View File

@ -1,7 +1,7 @@
// SPDX-License-Identifier: GPL-3.0-only
#include <board/gpio.h>
#include <common/debug.h>
#include <common/macro.h>
// clang-format off
struct Gpio __code ACIN_N = GPIO(B, 0);
@ -237,40 +237,3 @@ void gpio_init() {
// SERIRQ
GPCRM6 = GPIO_ALT;
}
#if GPIO_DEBUG
void gpio_debug_bank(
char *bank,
uint8_t data,
uint8_t mirror,
uint8_t pot,
volatile uint8_t *control
) {
for (char i = 0; i < 8; i++) {
DEBUG(
"%s%d:\n\tdata %d\n\tmirror %d\n\tpot %d\n\tcontrol %02X\n",
bank,
i,
(data >> i) & 1,
(mirror >> i) & 1,
(pot >> i) & 1,
*(control + i)
);
}
}
void gpio_debug(void) {
#define bank(BANK) gpio_debug_bank(#BANK, GPDR##BANK, GPDMR##BANK, GPOT##BANK, &GPCR##BANK##0)
bank(A);
bank(B);
bank(C);
bank(D);
bank(E);
bank(F);
bank(G);
bank(H);
bank(I);
bank(J);
#undef bank
}
#endif

View File

@ -6,7 +6,6 @@
#include <ec/gpio.h>
void gpio_init(void);
void gpio_debug(void);
// clang-format off
extern struct Gpio __code ACIN_N;

View File

@ -90,7 +90,7 @@ void main(void) {
INFO("\n");
#if GPIO_DEBUG
#ifdef GPIO_DEBUG
gpio_debug();
#endif

View File

@ -1,7 +1,7 @@
// SPDX-License-Identifier: GPL-3.0-only
#include <board/gpio.h>
#include <common/debug.h>
#include <common/macro.h>
// clang-format off
struct Gpio __code ACIN_N = GPIO(B, 6);
@ -239,40 +239,3 @@ void gpio_init() {
// SERIRQ
GPCRM6 = GPIO_ALT;
}
#if GPIO_DEBUG
void gpio_debug_bank(
char *bank,
uint8_t data,
uint8_t mirror,
uint8_t pot,
volatile uint8_t *control
) {
for (char i = 0; i < 8; i++) {
DEBUG(
"%s%d:\n\tdata %d\n\tmirror %d\n\tpot %d\n\tcontrol %02X\n",
bank,
i,
(data >> i) & 1,
(mirror >> i) & 1,
(pot >> i) & 1,
*(control + i)
);
}
}
void gpio_debug(void) {
#define bank(BANK) gpio_debug_bank(#BANK, GPDR##BANK, GPDMR##BANK, GPOT##BANK, &GPCR##BANK##0)
bank(A);
bank(B);
bank(C);
bank(D);
bank(E);
bank(F);
bank(G);
bank(H);
bank(I);
bank(J);
#undef bank
}
#endif

View File

@ -6,7 +6,6 @@
#include <ec/gpio.h>
void gpio_init(void);
void gpio_debug(void);
// clang-format off
extern struct Gpio __code ACIN_N;

View File

@ -1,7 +1,6 @@
// SPDX-License-Identifier: GPL-3.0-only
#include <board/gpio.h>
#include <common/debug.h>
#include <common/macro.h>
// clang-format off
@ -248,43 +247,3 @@ void gpio_init() {
// ALERT#
GPCRM6 = 0x86;
}
#if GPIO_DEBUG
void gpio_debug_bank(
char *bank,
uint8_t data,
uint8_t mirror,
uint8_t pot,
volatile uint8_t *control
) {
for (char i = 0; i < 8; i++) {
DEBUG(
"%s%d: data %d mirror %d pot %d control %02X\n",
bank,
i,
(data >> i) & 1,
(mirror >> i) & 1,
(pot >> i) & 1,
*(control + i)
);
}
}
void gpio_debug(void) {
#define bank(BANK) gpio_debug_bank(#BANK, GPDR##BANK, GPDMR##BANK, GPOT##BANK, &GPCR##BANK##0)
bank(A);
bank(B);
bank(C);
bank(D);
bank(E);
bank(F);
bank(G);
bank(H);
bank(I);
bank(J);
#define GPOTM 0
bank(M);
#undef GPOTM
#undef bank
}
#endif

View File

@ -6,7 +6,6 @@
#include <ec/gpio.h>
void gpio_init(void);
void gpio_debug(void);
// clang-format off
extern struct Gpio __code ACIN_N;

View File

@ -1,7 +1,6 @@
// SPDX-License-Identifier: GPL-3.0-only
#include <board/gpio.h>
#include <common/debug.h>
#include <common/macro.h>
// clang-format off
@ -255,43 +254,3 @@ void gpio_init(void) {
// ESPI_ALRT0#
GPCRM6 = GPIO_IN | GPIO_UP | GPIO_DOWN;
}
#if GPIO_DEBUG
void gpio_debug_bank(
char *bank,
uint8_t data,
uint8_t mirror,
uint8_t pot,
volatile uint8_t *control
) {
for (char i = 0; i < 8; i++) {
DEBUG(
"%s%d: data %d mirror %d pot %d control %02X\n",
bank,
i,
(data >> i) & 1,
(mirror >> i) & 1,
(pot >> i) & 1,
*(control + i)
);
}
}
void gpio_debug(void) {
#define bank(BANK) gpio_debug_bank(#BANK, GPDR##BANK, GPDMR##BANK, GPOT##BANK, &GPCR##BANK##0)
bank(A);
bank(B);
bank(C);
bank(D);
bank(E);
bank(F);
bank(G);
bank(H);
bank(I);
bank(J);
#define GPOTM 0
bank(M);
#undef GPOTM
#undef bank
}
#endif

View File

@ -6,7 +6,6 @@
#include <ec/gpio.h>
void gpio_init(void);
void gpio_debug(void);
// clang-format off
extern struct Gpio __code ACIN_N;

View File

@ -1,7 +1,7 @@
// SPDX-License-Identifier: GPL-3.0-only
#include <board/gpio.h>
#include <common/debug.h>
#include <common/macro.h>
// clang-format off
struct Gpio __code ACIN_N = GPIO(B, 6);
@ -239,40 +239,3 @@ void gpio_init() {
// SERIRQ
GPCRM6 = GPIO_ALT;
}
#if GPIO_DEBUG
void gpio_debug_bank(
char *bank,
uint8_t data,
uint8_t mirror,
uint8_t pot,
volatile uint8_t *control
) {
for (char i = 0; i < 8; i++) {
DEBUG(
"%s%d:\n\tdata %d\n\tmirror %d\n\tpot %d\n\tcontrol %02X\n",
bank,
i,
(data >> i) & 1,
(mirror >> i) & 1,
(pot >> i) & 1,
*(control + i)
);
}
}
void gpio_debug(void) {
#define bank(BANK) gpio_debug_bank(#BANK, GPDR##BANK, GPDMR##BANK, GPOT##BANK, &GPCR##BANK##0)
bank(A);
bank(B);
bank(C);
bank(D);
bank(E);
bank(F);
bank(G);
bank(H);
bank(I);
bank(J);
#undef bank
}
#endif

View File

@ -6,7 +6,6 @@
#include <ec/gpio.h>
void gpio_init(void);
void gpio_debug(void);
// clang-format off
extern struct Gpio __code ACIN_N;

View File

@ -1,7 +1,6 @@
// SPDX-License-Identifier: GPL-3.0-only
#include <board/gpio.h>
#include <common/debug.h>
#include <common/macro.h>
// clang-format off
@ -250,43 +249,3 @@ void gpio_init() {
// ALERT#
GPCRM6 = GPIO_IN | GPIO_UP;
}
#if GPIO_DEBUG
void gpio_debug_bank(
char *bank,
uint8_t data,
uint8_t mirror,
uint8_t pot,
volatile uint8_t *control
) {
for (char i = 0; i < 8; i++) {
DEBUG(
"%s%d: data %d mirror %d pot %d control %02X\n",
bank,
i,
(data >> i) & 1,
(mirror >> i) & 1,
(pot >> i) & 1,
*(control + i)
);
}
}
void gpio_debug(void) {
#define bank(BANK) gpio_debug_bank(#BANK, GPDR##BANK, GPDMR##BANK, GPOT##BANK, &GPCR##BANK##0)
bank(A);
bank(B);
bank(C);
bank(D);
bank(E);
bank(F);
bank(G);
bank(H);
bank(I);
bank(J);
#define GPOTM 0
bank(M);
#undef GPOTM
#undef bank
}
#endif

View File

@ -6,7 +6,6 @@
#include <ec/gpio.h>
void gpio_init(void);
void gpio_debug(void);
// clang-format off
extern struct Gpio __code ACIN_N;

View File

@ -1,7 +1,6 @@
// SPDX-License-Identifier: GPL-3.0-only
#include <board/gpio.h>
#include <common/debug.h>
#include <common/macro.h>
// clang-format off
@ -259,43 +258,3 @@ void gpio_init(void) {
// ESPI_ALRT0#
GPCRM6 = GPIO_IN | GPIO_UP | GPIO_DOWN;
}
#if GPIO_DEBUG
void gpio_debug_bank(
char *bank,
uint8_t data,
uint8_t mirror,
uint8_t pot,
volatile uint8_t *control
) {
for (char i = 0; i < 8; i++) {
DEBUG(
"%s%d: data %d mirror %d pot %d control %02X\n",
bank,
i,
(data >> i) & 1,
(mirror >> i) & 1,
(pot >> i) & 1,
*(control + i)
);
}
}
void gpio_debug(void) {
#define bank(BANK) gpio_debug_bank(#BANK, GPDR##BANK, GPDMR##BANK, GPOT##BANK, &GPCR##BANK##0)
bank(A);
bank(B);
bank(C);
bank(D);
bank(E);
bank(F);
bank(G);
bank(H);
bank(I);
bank(J);
#define GPOTM 0
bank(M);
#undef GPOTM
#undef bank
}
#endif

View File

@ -6,7 +6,6 @@
#include <ec/gpio.h>
void gpio_init(void);
void gpio_debug(void);
// clang-format off
extern struct Gpio __code ACIN_N;

View File

@ -1,7 +1,7 @@
// SPDX-License-Identifier: GPL-3.0-only
#include <board/gpio.h>
#include <common/debug.h>
#include <common/macro.h>
// clang-format off
struct Gpio __code ACIN_N = GPIO(B, 0);
@ -238,40 +238,3 @@ void gpio_init() {
// SERIRQ
GPCRM6 = GPIO_ALT;
}
#if GPIO_DEBUG
void gpio_debug_bank(
char *bank,
uint8_t data,
uint8_t mirror,
uint8_t pot,
volatile uint8_t *control
) {
for (char i = 0; i < 8; i++) {
DEBUG(
"%s%d:\n\tdata %d\n\tmirror %d\n\tpot %d\n\tcontrol %02X\n",
bank,
i,
(data >> i) & 1,
(mirror >> i) & 1,
(pot >> i) & 1,
*(control + i)
);
}
}
void gpio_debug(void) {
#define bank(BANK) gpio_debug_bank(#BANK, GPDR##BANK, GPDMR##BANK, GPOT##BANK, &GPCR##BANK##0)
bank(A);
bank(B);
bank(C);
bank(D);
bank(E);
bank(F);
bank(G);
bank(H);
bank(I);
bank(J);
#undef bank
}
#endif

View File

@ -6,7 +6,6 @@
#include <ec/gpio.h>
void gpio_init(void);
void gpio_debug(void);
// clang-format off
extern struct Gpio __code ACIN_N;

View File

@ -1,7 +1,7 @@
// SPDX-License-Identifier: GPL-3.0-only
#include <board/gpio.h>
#include <common/debug.h>
#include <common/macro.h>
// clang-format off
struct Gpio __code ACIN_N = GPIO(B, 0);
@ -243,40 +243,3 @@ void gpio_init() {
// SERIRQ
GPCRM6 = GPIO_IN | GPIO_UP;
}
#if GPIO_DEBUG
void gpio_debug_bank(
char *bank,
uint8_t data,
uint8_t mirror,
uint8_t pot,
volatile uint8_t *control
) {
for (char i = 0; i < 8; i++) {
DEBUG(
"%s%d:\n\tdata %d\n\tmirror %d\n\tpot %d\n\tcontrol %02X\n",
bank,
i,
(data >> i) & 1,
(mirror >> i) & 1,
(pot >> i) & 1,
*(control + i)
);
}
}
void gpio_debug(void) {
#define bank(BANK) gpio_debug_bank(#BANK, GPDR##BANK, GPDMR##BANK, GPOT##BANK, &GPCR##BANK##0)
bank(A);
bank(B);
bank(C);
bank(D);
bank(E);
bank(F);
bank(G);
bank(H);
bank(I);
bank(J);
#undef bank
}
#endif

View File

@ -6,7 +6,6 @@
#include <ec/gpio.h>
void gpio_init(void);
void gpio_debug(void);
extern struct Gpio __code ACIN_N;
extern struct Gpio __code AC_PRESENT;

View File

@ -1,7 +1,7 @@
// SPDX-License-Identifier: GPL-3.0-only
#include <board/gpio.h>
#include <common/debug.h>
#include <common/macro.h>
// clang-format off
struct Gpio __code ACIN_N = GPIO(B, 0);
@ -243,40 +243,3 @@ void gpio_init() {
// ESPI_ALRT0#
GPCRM6 = GPIO_IN | GPIO_UP;
}
#if GPIO_DEBUG
void gpio_debug_bank(
char *bank,
uint8_t data,
uint8_t mirror,
uint8_t pot,
volatile uint8_t *control
) {
for (char i = 0; i < 8; i++) {
DEBUG(
"%s%d:\n\tdata %d\n\tmirror %d\n\tpot %d\n\tcontrol %02X\n",
bank,
i,
(data >> i) & 1,
(mirror >> i) & 1,
(pot >> i) & 1,
*(control + i)
);
}
}
void gpio_debug(void) {
#define bank(BANK) gpio_debug_bank(#BANK, GPDR##BANK, GPDMR##BANK, GPOT##BANK, &GPCR##BANK##0)
bank(A);
bank(B);
bank(C);
bank(D);
bank(E);
bank(F);
bank(G);
bank(H);
bank(I);
bank(J);
#undef bank
}
#endif

View File

@ -6,7 +6,6 @@
#include <ec/gpio.h>
void gpio_init(void);
void gpio_debug(void);
extern struct Gpio __code ACIN_N;
extern struct Gpio __code AC_PRESENT;

View File

@ -1,7 +1,7 @@
// SPDX-License-Identifier: GPL-3.0-only
#include <board/gpio.h>
#include <common/debug.h>
#include <common/macro.h>
// clang-format off
struct Gpio __code ACIN_N = GPIO(B, 0);
@ -241,40 +241,3 @@ void gpio_init() {
// ESPI_ALRT0#
GPCRM6 = GPIO_IN | GPIO_UP;
}
#if GPIO_DEBUG
void gpio_debug_bank(
char *bank,
uint8_t data,
uint8_t mirror,
uint8_t pot,
volatile uint8_t *control
) {
for (char i = 0; i < 8; i++) {
DEBUG(
"%s%d:\n\tdata %d\n\tmirror %d\n\tpot %d\n\tcontrol %02X\n",
bank,
i,
(data >> i) & 1,
(mirror >> i) & 1,
(pot >> i) & 1,
*(control + i)
);
}
}
void gpio_debug(void) {
#define bank(BANK) gpio_debug_bank(#BANK, GPDR##BANK, GPDMR##BANK, GPOT##BANK, &GPCR##BANK##0)
bank(A);
bank(B);
bank(C);
bank(D);
bank(E);
bank(F);
bank(G);
bank(H);
bank(I);
bank(J);
#undef bank
}
#endif

View File

@ -6,7 +6,6 @@
#include <ec/gpio.h>
void gpio_init(void);
void gpio_debug(void);
extern struct Gpio __code ACIN_N;
extern struct Gpio __code AC_PRESENT;

View File

@ -1,7 +1,7 @@
// SPDX-License-Identifier: GPL-3.0-only
#include <board/gpio.h>
#include <common/debug.h>
#include <common/macro.h>
// clang-format off
struct Gpio __code ACIN_N = GPIO(B, 0);
@ -247,40 +247,3 @@ void gpio_init() {
// ESPI_ALRT0#
GPCRM6 = GPIO_IN | GPIO_UP;
}
#if GPIO_DEBUG
void gpio_debug_bank(
char *bank,
uint8_t data,
uint8_t mirror,
uint8_t pot,
volatile uint8_t *control
) {
for (char i = 0; i < 8; i++) {
DEBUG(
"%s%d:\n\tdata %d\n\tmirror %d\n\tpot %d\n\tcontrol %02X\n",
bank,
i,
(data >> i) & 1,
(mirror >> i) & 1,
(pot >> i) & 1,
*(control + i)
);
}
}
void gpio_debug(void) {
#define bank(BANK) gpio_debug_bank(#BANK, GPDR##BANK, GPDMR##BANK, GPOT##BANK, &GPCR##BANK##0)
bank(A);
bank(B);
bank(C);
bank(D);
bank(E);
bank(F);
bank(G);
bank(H);
bank(I);
bank(J);
#undef bank
}
#endif

View File

@ -6,7 +6,6 @@
#include <ec/gpio.h>
void gpio_init(void);
void gpio_debug(void);
extern struct Gpio __code ACIN_N;
extern struct Gpio __code AC_PRESENT;

View File

@ -1,7 +1,6 @@
// SPDX-License-Identifier: GPL-3.0-only
#include <board/gpio.h>
#include <common/debug.h>
#include <common/macro.h>
// clang-format off
@ -247,43 +246,3 @@ void gpio_init() {
// SERIRQ
GPCRM6 = GPIO_IN | GPIO_UP | GPIO_DOWN;
}
#if GPIO_DEBUG
void gpio_debug_bank(
char *bank,
uint8_t data,
uint8_t mirror,
uint8_t pot,
volatile uint8_t *control
) {
for (char i = 0; i < 8; i++) {
DEBUG(
"%s%d: data %d mirror %d pot %d control %02X\n",
bank,
i,
(data >> i) & 1,
(mirror >> i) & 1,
(pot >> i) & 1,
*(control + i)
);
}
}
void gpio_debug(void) {
#define bank(BANK) gpio_debug_bank(#BANK, GPDR##BANK, GPDMR##BANK, GPOT##BANK, &GPCR##BANK##0)
bank(A);
bank(B);
bank(C);
bank(D);
bank(E);
bank(F);
bank(G);
bank(H);
bank(I);
bank(J);
#define GPOTM 0
bank(M);
#undef GPOTM
#undef bank
}
#endif

View File

@ -6,7 +6,6 @@
#include <ec/gpio.h>
void gpio_init(void);
void gpio_debug(void);
// clang-format off
extern struct Gpio __code ACIN_N;

View File

@ -1,7 +1,6 @@
// SPDX-License-Identifier: GPL-3.0-only
#include <board/gpio.h>
#include <common/debug.h>
#include <common/macro.h>
// clang-format off
@ -259,43 +258,3 @@ void gpio_init(void) {
// ESPI_ALRT0#
GPCRM6 = GPIO_IN | GPIO_UP | GPIO_DOWN;
}
#if GPIO_DEBUG
void gpio_debug_bank(
char *bank,
uint8_t data,
uint8_t mirror,
uint8_t pot,
volatile uint8_t *control
) {
for (char i = 0; i < 8; i++) {
DEBUG(
"%s%d: data %d mirror %d pot %d control %02X\n",
bank,
i,
(data >> i) & 1,
(mirror >> i) & 1,
(pot >> i) & 1,
*(control + i)
);
}
}
void gpio_debug(void) {
#define bank(BANK) gpio_debug_bank(#BANK, GPDR##BANK, GPDMR##BANK, GPOT##BANK, &GPCR##BANK##0)
bank(A);
bank(B);
bank(C);
bank(D);
bank(E);
bank(F);
bank(G);
bank(H);
bank(I);
bank(J);
#define GPOTM 0
bank(M);
#undef GPOTM
#undef bank
}
#endif

View File

@ -6,7 +6,6 @@
#include <ec/gpio.h>
void gpio_init(void);
void gpio_debug(void);
// clang-format off
extern struct Gpio __code ACIN_N;

View File

@ -1,7 +1,7 @@
// SPDX-License-Identifier: GPL-3.0-only
#include <board/gpio.h>
#include <common/debug.h>
#include <common/macro.h>
// clang-format off
struct Gpio __code ACIN_N = GPIO(B, 0);
@ -237,40 +237,3 @@ void gpio_init() {
// SERIRQ
GPCRM6 = GPIO_ALT;
}
#if GPIO_DEBUG
void gpio_debug_bank(
char *bank,
uint8_t data,
uint8_t mirror,
uint8_t pot,
volatile uint8_t *control
) {
for (char i = 0; i < 8; i++) {
DEBUG(
"%s%d:\n\tdata %d\n\tmirror %d\n\tpot %d\n\tcontrol %02X\n",
bank,
i,
(data >> i) & 1,
(mirror >> i) & 1,
(pot >> i) & 1,
*(control + i)
);
}
}
void gpio_debug(void) {
#define bank(BANK) gpio_debug_bank(#BANK, GPDR##BANK, GPDMR##BANK, GPOT##BANK, &GPCR##BANK##0)
bank(A);
bank(B);
bank(C);
bank(D);
bank(E);
bank(F);
bank(G);
bank(H);
bank(I);
bank(J);
#undef bank
}
#endif

View File

@ -6,7 +6,6 @@
#include <ec/gpio.h>
void gpio_init(void);
void gpio_debug(void);
// clang-format off
extern struct Gpio __code ACIN_N;

View File

@ -1,7 +1,7 @@
// SPDX-License-Identifier: GPL-3.0-only
#include <board/gpio.h>
#include <common/debug.h>
#include <common/macro.h>
// clang-format off
struct Gpio __code ACIN_N = GPIO(B, 6);
@ -244,40 +244,3 @@ void gpio_init(void) {
// SERIRQ
GPCRM6 = GPIO_ALT;
}
#if GPIO_DEBUG
void gpio_debug_bank(
char *bank,
uint8_t data,
uint8_t mirror,
uint8_t pot,
volatile uint8_t *control
) {
for (char i = 0; i < 8; i++) {
DEBUG(
"%s%d:\n\tdata %d\n\tmirror %d\n\tpot %d\n\tcontrol %02X\n",
bank,
i,
(data >> i) & 1,
(mirror >> i) & 1,
(pot >> i) & 1,
*(control + i)
);
}
}
void gpio_debug(void) {
#define bank(BANK) gpio_debug_bank(#BANK, GPDR##BANK, GPDMR##BANK, GPOT##BANK, &GPCR##BANK##0)
bank(A);
bank(B);
bank(C);
bank(D);
bank(E);
bank(F);
bank(G);
bank(H);
bank(I);
bank(J);
#undef bank
}
#endif

View File

@ -6,7 +6,6 @@
#include <ec/gpio.h>
void gpio_init(void);
void gpio_debug(void);
// clang-format off
extern struct Gpio __code ACIN_N;

View File

@ -1,7 +1,6 @@
// SPDX-License-Identifier: GPL-3.0-only
#include <board/gpio.h>
#include <common/debug.h>
#include <common/macro.h>
// clang-format off
@ -242,40 +241,3 @@ void gpio_init() {
// SERIRQ
GPCRM6 = GPIO_ALT;
}
#if GPIO_DEBUG
void gpio_debug_bank(
char *bank,
uint8_t data,
uint8_t mirror,
uint8_t pot,
volatile uint8_t *control
) {
for (char i = 0; i < 8; i++) {
DEBUG(
"%s%d:\n\tdata %d\n\tmirror %d\n\tpot %d\n\tcontrol %02X\n",
bank,
i,
(data >> i) & 1,
(mirror >> i) & 1,
(pot >> i) & 1,
*(control + i)
);
}
}
void gpio_debug(void) {
#define bank(BANK) gpio_debug_bank(#BANK, GPDR##BANK, GPDMR##BANK, GPOT##BANK, &GPCR##BANK##0)
bank(A);
bank(B);
bank(C);
bank(D);
bank(E);
bank(F);
bank(G);
bank(H);
bank(I);
bank(J);
#undef bank
}
#endif

View File

@ -6,7 +6,6 @@
#include <ec/gpio.h>
void gpio_init(void);
void gpio_debug(void);
// clang-format off
extern struct Gpio __code ACIN_N;

View File

@ -1,7 +1,6 @@
// SPDX-License-Identifier: GPL-3.0-only
#include <board/gpio.h>
#include <common/debug.h>
#include <common/macro.h>
// clang-format off
@ -241,40 +240,3 @@ void gpio_init() {
// SERIRQ
GPCRM6 = GPIO_ALT;
}
#if GPIO_DEBUG
void gpio_debug_bank(
char *bank,
uint8_t data,
uint8_t mirror,
uint8_t pot,
volatile uint8_t *control
) {
for (char i = 0; i < 8; i++) {
DEBUG(
"%s%d:\n\tdata %d\n\tmirror %d\n\tpot %d\n\tcontrol %02X\n",
bank,
i,
(data >> i) & 1,
(mirror >> i) & 1,
(pot >> i) & 1,
*(control + i)
);
}
}
void gpio_debug(void) {
#define bank(BANK) gpio_debug_bank(#BANK, GPDR##BANK, GPDMR##BANK, GPOT##BANK, &GPCR##BANK##0)
bank(A);
bank(B);
bank(C);
bank(D);
bank(E);
bank(F);
bank(G);
bank(H);
bank(I);
bank(J);
#undef bank
}
#endif

View File

@ -6,7 +6,6 @@
#include <ec/gpio.h>
void gpio_init(void);
void gpio_debug(void);
// clang-format off
extern struct Gpio __code ACIN_N;

View File

@ -1,7 +1,7 @@
// SPDX-License-Identifier: GPL-3.0-only
#include <board/gpio.h>
#include <common/debug.h>
#include <common/macro.h>
// clang-format off
struct Gpio __code ACIN_N = GPIO(B, 0);
@ -243,40 +243,3 @@ void gpio_init() {
// SERIRQ_ESPI_ALERT0
GPCRM6 = GPIO_IN | GPIO_UP;
}
#if GPIO_DEBUG
void gpio_debug_bank(
char *bank,
uint8_t data,
uint8_t mirror,
uint8_t pot,
volatile uint8_t *control
) {
for (char i = 0; i < 8; i++) {
DEBUG(
"%s%d:\n\tdata %d\n\tmirror %d\n\tpot %d\n\tcontrol %02X\n",
bank,
i,
(data >> i) & 1,
(mirror >> i) & 1,
(pot >> i) & 1,
*(control + i)
);
}
}
void gpio_debug(void) {
#define bank(BANK) gpio_debug_bank(#BANK, GPDR##BANK, GPDMR##BANK, GPOT##BANK, &GPCR##BANK##0)
bank(A);
bank(B);
bank(C);
bank(D);
bank(E);
bank(F);
bank(G);
bank(H);
bank(I);
bank(J);
#undef bank
}
#endif

View File

@ -6,7 +6,6 @@
#include <ec/gpio.h>
void gpio_init(void);
void gpio_debug(void);
extern struct Gpio __code ACIN_N;
extern struct Gpio __code AC_PRESENT;

View File

@ -1,7 +1,6 @@
// SPDX-License-Identifier: GPL-3.0-only
#include <board/gpio.h>
#include <common/debug.h>
#include <common/macro.h>
// clang-format off
@ -258,43 +257,3 @@ void gpio_init(void) {
// ESPI_ALRT0#
GPCRM6 = GPIO_IN | GPIO_UP | GPIO_DOWN;
}
#if GPIO_DEBUG
void gpio_debug_bank(
char *bank,
uint8_t data,
uint8_t mirror,
uint8_t pot,
volatile uint8_t *control
) {
for (char i = 0; i < 8; i++) {
DEBUG(
"%s%d: data %d mirror %d pot %d control %02X\n",
bank,
i,
(data >> i) & 1,
(mirror >> i) & 1,
(pot >> i) & 1,
*(control + i)
);
}
}
void gpio_debug(void) {
#define bank(BANK) gpio_debug_bank(#BANK, GPDR##BANK, GPDMR##BANK, GPOT##BANK, &GPCR##BANK##0)
bank(A);
bank(B);
bank(C);
bank(D);
bank(E);
bank(F);
bank(G);
bank(H);
bank(I);
bank(J);
#define GPOTM 0
bank(M);
#undef GPOTM
#undef bank
}
#endif

View File

@ -6,7 +6,6 @@
#include <ec/gpio.h>
void gpio_init(void);
void gpio_debug(void);
// clang-format off
extern struct Gpio __code ACIN_N;

View File

@ -1,6 +1,7 @@
// SPDX-License-Identifier: GPL-3.0-only
#include <ec/gpio.h>
#include <common/debug.h>
bool gpio_get(struct Gpio *gpio) {
if (*(gpio->data) & gpio->value) {
@ -17,3 +18,43 @@ void gpio_set(struct Gpio *gpio, bool value) {
*(gpio->data) &= ~(gpio->value);
}
}
#ifdef GPIO_DEBUG
static void gpio_debug_bank(
char *bank,
uint8_t data,
uint8_t mirror,
uint8_t pot,
volatile uint8_t *control
) {
for (char i = 0; i < 8; i++) {
DEBUG(
"%s%d: data %d mirror %d pot %d control %02X\n",
bank,
i,
(data >> i) & 1,
(mirror >> i) & 1,
(pot >> i) & 1,
*(control + i)
);
}
}
void gpio_debug(void) {
#define bank(BANK) gpio_debug_bank(#BANK, GPDR##BANK, GPDMR##BANK, GPOT##BANK, &GPCR##BANK##0)
bank(A);
bank(B);
bank(C);
bank(D);
bank(E);
bank(F);
bank(G);
bank(H);
bank(I);
bank(J);
#define GPOTM 0
bank(M);
#undef GPOTM
#undef bank
}
#endif // GPIO_DEBUG

View File

@ -35,6 +35,10 @@ struct Gpio {
bool gpio_get(struct Gpio *gpio);
void gpio_set(struct Gpio *gpio, bool value);
#ifdef GPIO_DEBUG
void gpio_debug(void);
#endif
volatile uint8_t __xdata __at(0x1600) GCR;
volatile uint8_t __xdata __at(0x16F0) GCR1;
volatile uint8_t __xdata __at(0x16F1) GCR2;