Що означає цей макрос у коді ядра Linux?


2

див. я знайшов один конфігураційний файл, в якому це визначено макросом

#
# Input Device Drivers
#
CONFIG_INPUT_KEYBOARD=y
# CONFIG_KEYBOARD_ADP5588 is not set
CONFIG_KEYBOARD_ATKBD=y
# CONFIG_KEYBOARD_QT2160 is not set
# CONFIG_KEYBOARD_LKKBD is not set
# CONFIG_KEYBOARD_GPIO is not set
# CONFIG_KEYBOARD_TCA6416 is not set
# CONFIG_KEYBOARD_MATRIX is not set
# CONFIG_KEYBOARD_LM8323 is not set
# CONFIG_KEYBOARD_MAX7359 is not set
# CONFIG_KEYBOARD_NEWTON is not set
# CONFIG_KEYBOARD_OPENCORES is not set
# CONFIG_KEYBOARD_STOWAWAY is not set
# CONFIG_KEYBOARD_SUNKBD is not set
CONFIG_KEYBOARD_OMAP4=y

Але я не розумію, який макрос я повинен включити для підключення USB-клавіатури з pandabord? Чи є які-небудь documation для цього макросу файли конфігурації?


3
Це не макроси, і ваше питання не пов'язане з програмуванням.
tripleee

Можливо, вам потрібна конфігурація для USB HID en.wikipedia.org/wiki/USB_human_interface_device_class люблю CONFIG_USB_HID та інші, але stackoverflow є неправильним місцем, щоб запитати.
Basile Starynkevitch

1
І ви можете отримати певну документацію з напр. make menuconfig
Basile Starynkevitch

Відповіді:


3

Це не макроси. Це конфігураційний файл, створений перед компіляцією ядра, створеного "make menuconfig" або "make xconfig" і т.д.

Вони вказують, які драйвери повинні бути побудовані при компіляції ядра.

'y' означає, що підтримка вбудована в ядро

'm' означає, що драйвер побудований як модуль ядра


1

Перевірте сумісний код драйвера і з кожним драйвером буде визначено макрос у файлі makefile. Виберіть цей макрос як y або m на основі вашої вимоги. Також не забудьте вибрати залежні драйвери для вашої клавіатури, які можуть бути ядром USB і сховали драйвери.

Я запропоную краще запустити make menuconfig для архітектури та виберіть драйвер клавіатури. Це дозволить всім залежним водіям.


0

Вони не є макросами, оскільки вони є тут, але стають макросами для використання коду C у створеному include / generated / autoconf.h.

  • CONFIG_XXXXXX=y стане #define CONFIG_XXXXXX 1 пізніше.
  • CONFIG_XXXXXX=m стане #define CONFIG_XXXXXX_MODULE 1 пізніше.

Елементів, не визначених тут, не буде #defined пізніше.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.