제가  Gpio를 제어하기 위하여  디바이스 드라이버를 만들고 있습니다.

만들다기 보다는 FALINUX에서 만든 프로그램을 제가  수정하려고 합니다.

FALINUX에서 gpio 프로그램 중에 dev_gpio.c에서

static void hw_gpio_init() 함수에서 au_sync();  함수를 호출 합니다.

au1000.h 함수를 보면

void static inline_au_sync(void)

{
 __asm__ volatile ("sync");
}

함수가 정의 되어 있었습니다.

여기에서 __asm__ volatile ("sync"); <= 이 부분이 하는 일이 무엇인가 궁금합니다

주석에는 다음과 같이 설명이 나옵니다

/* cpu pipeline flush */

그래도 잘 이해가 안 갑니다