MMC 명령 대기열 엔진을 비활성화하는 방법

MMC 명령 대기열 엔진을 비활성화하는 방법

명령 대기열 엔진 드라이버를 비활성화하는 커널 매개변수는 무엇입니까?

내가 읽고있다MMCC

MMC_DEV_ATTR(cmdq_en, "%d\n", card->ext_csd.cmdq_en);
/*
* Enable Command Queue if supported. Note that Packed Commands cannot
* be used with Command Queue.
*/
card->ext_csd.cmdq_en = false;

ext_csd.cmdq_en=false 내가 시도한 sdhci.debug_quirks=0x65168080매개변수를 설정했을 수도 있다고 생각했습니다.여기하지만 작동하지 않습니다.

답변1

장치 트리에는 커널이 잘 지원하지 않는 "mediatek,cqhci" 속성이 있는 것으로 나타났습니다.

/dts-v1/;

/ {
    mmc@11230000 {
        compatible = "mediatek,mt6768-mmc";
        mediatek,cqhci;
    };
};

그래서 fdtput을 사용하여 장치 트리 파일을 수정해야 했습니다.

fdtput -d /path/to/fdt /mmc@11230000 "mediatek,cqhci"

속도

  1. boot.img에서 장치 트리 blob을 덤프했습니다.
  2. 빈 병동순수 평면 장치 트리를 얻기 위한 blob
  3. Blob에서 cqhci 활성화 속성을 제거했습니다.

관련 정보