Tenho um arquivo de patch DTS que adiciona uma EEPROM à árvore de dispositivos. Tenho uma .bbappend
receita com estas linhas simples
PATCHTOOL = "git"
SRC_URI += " \
file://0001-imx6dl-custom.dts.patch \
"
Iniciei o bitbake, o patch foi aplicado e a imagem foi gerada.
Ajustei algumas outras coisas. Quando reiniciei o Bitbake, recebi um erro na do_patch
etapa 1, dizendo o seguinte:
NOTE: Executing Tasks
NOTE: Setscene tasks completed
ERROR: linux-custom-5.4-r0 do_patch: Applying '0001-imx6dl-custom.dts.patch' failed:
checking file arch/arm/boot/dts/imx6dl-custom.dts
Reversed (or previously applied) patch detected! Assume -R? [n]
Apply anyway? [n]
Skipping patch.
1 out of 1 hunk ignored
ERROR: Logfile of failure stored in: /home/user/yocto/build/tmp/work/custom_imx6dl_r027-poky-linux-gnueabi/linux-custom/5.4-r0/temp/log.do_patch.19802
ERROR: Task (/home/user/yocto/sources/meta-custom/recipes-kernel/linux-mod/linux-custom_5.4.bb:do_patch) failed with exit code '1'
O arquivo dts em work-shared tem o patch aplicado. Se eu fizer um git log
commit na pasta work-shared, vejo o último commit do código-fonte do meu kernel (onde o dts NÃO foi corrigido) e um commit extra que oe.pathc@oe
aplica o patch. Então, parece que está tudo bem. Mesmo assim, recebo este erro.
Qual pode ser a causa disso?
Fiz alguns testes extras. Removi o patch e o .bbappend que o aplica da minha receita do kernel. Estranhamente, parece que o bitbake ainda está tentando aplicar o patch. Quando executo o bitbake, recebo...
Loaded 4146 entries from dependency cache.
WARNING: /home/user/yocto/sources/meta-custom/recipes-kernel/linux/linux-custom_5.4.bb: Unable to get checksum for linux-custom SRC_URI entry 0001-imx6dl-custom.dts.patch: file could not be found
0001-imx6dl-custom.dts.patch
foi de fato excluído, mas o .bbappend
arquivo também. Por que ele ainda está procurando por ele? Tentei vários comandos de limpeza ( bitbake -c clean linux-custom
, bitbake -fc cleanall linux-custom
), mas o bitbake continua procurando pelo patch. E ainda recebo o erro "patch aplicado anteriormente"!
Existe algum histórico que não será excluído do meu fluxo de trabalho do Yocto? O que estou perdendo?