Kconfig 5.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154
  1. menu "Generic Driver Options"
  2. config UEVENT_HELPER_PATH
  3. string "path to uevent helper"
  4. depends on HOTPLUG
  5. default "/sbin/hotplug"
  6. help
  7. Path to uevent helper program forked by the kernel for
  8. every uevent.
  9. config DEVTMPFS
  10. bool "Create a kernel maintained /dev tmpfs (EXPERIMENTAL)"
  11. depends on HOTPLUG && SHMEM && TMPFS
  12. help
  13. This creates a tmpfs filesystem, and mounts it at bootup
  14. and mounts it at /dev. The kernel driver core creates device
  15. nodes for all registered devices in that filesystem. All device
  16. nodes are owned by root and have the default mode of 0600.
  17. Userspace can add and delete the nodes as needed. This is
  18. intended to simplify bootup, and make it possible to delay
  19. the initial coldplug at bootup done by udev in userspace.
  20. It should also provide a simpler way for rescue systems
  21. to bring up a kernel with dynamic major/minor numbers.
  22. Meaningful symlinks, permissions and device ownership must
  23. still be handled by userspace.
  24. If unsure, say N here.
  25. config DEVTMPFS_MOUNT
  26. bool "Automount devtmpfs at /dev"
  27. depends on DEVTMPFS
  28. help
  29. This will mount devtmpfs at /dev if the kernel mounts the root
  30. filesystem. It will not affect initramfs based mounting.
  31. If unsure, say N here.
  32. config STANDALONE
  33. bool "Select only drivers that don't need compile-time external firmware" if EXPERIMENTAL
  34. default y
  35. help
  36. Select this option if you don't have magic firmware for drivers that
  37. need it.
  38. If unsure, say Y.
  39. config PREVENT_FIRMWARE_BUILD
  40. bool "Prevent firmware from being built"
  41. default y
  42. help
  43. Say yes to avoid building firmware. Firmware is usually shipped
  44. with the driver, and only when updating the firmware a rebuild
  45. should be made.
  46. If unsure say Y here.
  47. config FW_LOADER
  48. tristate "Userspace firmware loading support" if EMBEDDED
  49. depends on HOTPLUG
  50. default y
  51. ---help---
  52. This option is provided for the case where no in-kernel-tree modules
  53. require userspace firmware loading support, but a module built outside
  54. the kernel tree does.
  55. config FIRMWARE_IN_KERNEL
  56. bool "Include in-kernel firmware blobs in kernel binary"
  57. depends on FW_LOADER
  58. default y
  59. help
  60. The kernel source tree includes a number of firmware 'blobs'
  61. which are used by various drivers. The recommended way to
  62. use these is to run "make firmware_install" and to copy the
  63. resulting binary files created in usr/lib/firmware directory
  64. of the kernel tree to the /lib/firmware on your system so
  65. that they can be loaded by userspace helpers on request.
  66. Enabling this option will build each required firmware blob
  67. into the kernel directly, where request_firmware() will find
  68. them without having to call out to userspace. This may be
  69. useful if your root file system requires a device which uses
  70. such firmware, and do not wish to use an initrd.
  71. This single option controls the inclusion of firmware for
  72. every driver which uses request_firmware() and ships its
  73. firmware in the kernel source tree, to avoid a proliferation
  74. of 'Include firmware for xxx device' options.
  75. Say 'N' and let firmware be loaded from userspace.
  76. config EXTRA_FIRMWARE
  77. string "External firmware blobs to build into the kernel binary"
  78. depends on FW_LOADER
  79. help
  80. This option allows firmware to be built into the kernel, for the
  81. cases where the user either cannot or doesn't want to provide it from
  82. userspace at runtime (for example, when the firmware in question is
  83. required for accessing the boot device, and the user doesn't want to
  84. use an initrd).
  85. This option is a string, and takes the (space-separated) names of the
  86. firmware files -- the same names which appear in MODULE_FIRMWARE()
  87. and request_firmware() in the source. These files should exist under
  88. the directory specified by the EXTRA_FIRMWARE_DIR option, which is
  89. by default the firmware/ subdirectory of the kernel source tree.
  90. So, for example, you might set CONFIG_EXTRA_FIRMWARE="usb8388.bin",
  91. copy the usb8388.bin file into the firmware/ directory, and build the
  92. kernel. Then any request_firmware("usb8388.bin") will be
  93. satisfied internally without needing to call out to userspace.
  94. WARNING: If you include additional firmware files into your binary
  95. kernel image which are not available under the terms of the GPL,
  96. then it may be a violation of the GPL to distribute the resulting
  97. image -- since it combines both GPL and non-GPL work. You should
  98. consult a lawyer of your own before distributing such an image.
  99. config EXTRA_FIRMWARE_DIR
  100. string "Firmware blobs root directory"
  101. depends on EXTRA_FIRMWARE != ""
  102. default "firmware"
  103. help
  104. This option controls the directory in which the kernel build system
  105. looks for the firmware files listed in the EXTRA_FIRMWARE option.
  106. The default is the firmware/ directory in the kernel source tree,
  107. but by changing this option you can point it elsewhere, such as
  108. the /lib/firmware/ directory or another separate directory
  109. containing firmware files.
  110. config DEBUG_DRIVER
  111. bool "Driver Core verbose debug messages"
  112. depends on DEBUG_KERNEL
  113. help
  114. Say Y here if you want the Driver core to produce a bunch of
  115. debug messages to the system log. Select this if you are having a
  116. problem with the driver core and want to see more of what is
  117. going on.
  118. If you are unsure about this, say N here.
  119. config DEBUG_DEVRES
  120. bool "Managed device resources verbose debug messages"
  121. depends on DEBUG_KERNEL
  122. help
  123. This option enables kernel parameter devres.log. If set to
  124. non-zero, devres debug messages are printed. Select this if
  125. you are having a problem with devres or want to debug
  126. resource management for a managed device. devres.log can be
  127. switched on and off from sysfs node.
  128. If you are unsure about this, Say N here.
  129. config SYS_HYPERVISOR
  130. bool
  131. default n
  132. endmenu