hello gaozejun,
you’re right, above pin number calculation formula was based-on boot into linux kernel.
please using cboot marcos for writing GPIO pins,
for example,
static status_t tegra_gpio_write(uint32_t gpio_num, enum gpio_pin_state state, void *drv_data)
{
...
GPIO_WRITE(GPIO_PORT_BASE(gpio_num), OUT, GPIO_PIN(gpio_num), reg_val);