This is an old revision of the document!
You can use Device Tree Overlay feature to enable/disable some hardware functions without to recompile the kernel source code.
The dtbo files are stored in directory /boot/dtb/amlogic/kvim4.dtb.overlays
:
khadas@Khadas:~$ ls -al /boot/dtb/amlogic/kvim4.dtb.overlays/ total 28 drwxr-xr-x 2 root root 4096 Jul 6 14:55 . drwxr-xr-x 3 root root 4096 Jul 6 14:55 .. -rwxr-xr-x 1 root root 462 Jul 6 14:55 ext_board.dtbo -rwxr-xr-x 1 root root 223 Jul 6 14:55 i2cm_a.dtbo -rwxr-xr-x 1 root root 223 Jul 6 14:55 i2cm_f.dtbo -rwxr-xr-x 1 root root 225 Jul 6 14:55 pwm_f.dtbo -rwxr-xr-x 1 root root 225 Jul 6 14:55 uart_e.dtbo
There are some ready to use dtbo files, you can also add your own dtbos to enable or disable the peripherals.
khadas@Khadas:~$ ll /boot/dtb/overlays/kvim3
/dts-v1/; /plugin/; / { fragment@0 { target = <&i2c3>; __overlay__ { status = "okay"; }; }; };
This device tree overlay is to enable `i2c3`.
khadas@Khadas:~$ dtc -I dts -O dtb -o example.dtbo example.dts khadas@Khadas:~$ ls example.dtbo example.dtbo
/boot/dtb/overlays/kvim3
/boot/env.txt
to add in node overlays