kernel_fdts_compressed.rst 2.2 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677
  1. .. SPDX-License-Identifier: GPL-2.0+
  2. Kernel and multiple compressed FDT blobs
  3. ========================================
  4. Since the FDTs are compressed, configurations must provide a compatible
  5. string to match directly.
  6. ::
  7. /dts-v1/;
  8. / {
  9. description = "Image with single Linux kernel and compressed FDT blobs";
  10. #address-cells = <1>;
  11. images {
  12. kernel {
  13. description = "Vanilla Linux kernel";
  14. data = /incbin/("./vmlinux.bin.gz");
  15. type = "kernel";
  16. arch = "ppc";
  17. os = "linux";
  18. compression = "gzip";
  19. load = <00000000>;
  20. entry = <00000000>;
  21. hash-1 {
  22. algo = "crc32";
  23. };
  24. hash-2 {
  25. algo = "sha1";
  26. };
  27. };
  28. fdt@1 {
  29. description = "Flattened Device Tree blob 1";
  30. data = /incbin/("./myboard-var1.dtb");
  31. type = "flat_dt";
  32. arch = "ppc";
  33. compression = "gzip";
  34. hash-1 {
  35. algo = "crc32";
  36. };
  37. hash-2 {
  38. algo = "sha1";
  39. };
  40. };
  41. fdt@2 {
  42. description = "Flattened Device Tree blob 2";
  43. data = /incbin/("./myboard-var2.dtb");
  44. type = "flat_dt";
  45. arch = "ppc";
  46. compression = "lzma";
  47. hash-1 {
  48. algo = "crc32";
  49. };
  50. hash-2 {
  51. algo = "sha1";
  52. };
  53. };
  54. };
  55. configurations {
  56. default = "conf@1";
  57. conf@1 {
  58. description = "Boot Linux kernel with FDT blob 1";
  59. kernel = "kernel";
  60. fdt = "fdt@1";
  61. compatible = "myvendor,myboard-variant1";
  62. };
  63. conf@2 {
  64. description = "Boot Linux kernel with FDT blob 2";
  65. kernel = "kernel";
  66. fdt = "fdt@2";
  67. compatible = "myvendor,myboard-variant2";
  68. };
  69. };
  70. };