diff --git a/documentation/linux_configuration.pdf b/documentation/linux_configuration.pdf index ae7dd1b..e821fc6 100644 Binary files a/documentation/linux_configuration.pdf and b/documentation/linux_configuration.pdf differ diff --git a/documentation/linux_configuration.tex b/documentation/linux_configuration.tex index 42d82a6..4b9b658 100644 --- a/documentation/linux_configuration.tex +++ b/documentation/linux_configuration.tex @@ -8720,4 +8720,352 @@ Wenn Sie CAN"=Unterstützung wünschen, sollten Sie hier und auch bei dem spezifischen Treiber für Ihr(e) Steuergerät(e) unter dem Abschnitt Netzwerkgeräteunterstützung Y angeben. +\subsubsection{Raw CAN Protocol (raw access with CAN-ID filtering)} +CONFIG\_CAN\_RAW [=m] \textbf{[M]}\\* +Die Option raw CAN-Protokoll bietet Zugriff auf den CAN-Bus über die BSD-Socket-API. +In den meisten Fällen, in denen kein höheres Protokoll verwendet wird, sollten Sie +das Raw-Socket verwenden. Der Raw-Socket verfügt über mehrere Filteroptionen, +z.~B. ID"=Maskierung/Fehlerrahmen. +Um rohe CAN-Nachrichten zu empfangen/senden, verwenden Sie AF\_CAN mit dem +Protokoll CAN\_RAW. + +\subsubsection{Broadcast Manager CAN Protocol (with content filtering)} +CONFIG\_CAN\_BCM [=m] \textbf{[M]}\\* +Der Broadcast Manager bietet Inhaltsfilterung, Timeout-Überwachung, Senden von +RTR"=Frames und zyklischen CAN"=Nachrichten ohne ständige Benutzerinteraktion. +Der BCM kann über die BSD"=Socket"=API \glqq programmiert\grqq{} werden und +informiert Sie bei Bedarf z.~B. nur bei Content"=Updates/Timeouts. +In den meisten Fällen, in denen zyklische CAN"=Nachrichten auf dem Bus verwendet +werden (z.~B. in der Automobilbranche), wird man wahrscheinlich den bcm"=Socket +verwenden wollen. Um den Broadcast Manager zu nutzen, verwenden Sie AF\_CAN mit +dem Protokoll CAN\_BCM. + +\subsubsection{CAN Gateway/Router (with netlink configuration)} +CONFIG\_CAN\_GW [=m] \textbf{[M]}\\* +Der CAN"=Gateway/Router wird zum Weiterleiten (und Modifizieren) von CAN"=Frames +verwendet. Er basiert auf der PF\_CAN"=Kerninfrastruktur für die Nachrichtenfilterung +und das Senden von Nachrichten und kann optional geroutete CAN"=Frames im laufenden +Betrieb ändern. CAN"=Frames können zwischen CAN"=Netzwerkschnittstellen geroutet +werden (ein Hop). Sie können mit AND/OR/XOR/SET"=Verknüpfungen modifiziert werden, +wie sie von der Netlink"=Konfigurationsschnittstelle konfiguriert werden, die +z.~B. von iptables bekannt ist. + +\subsubsection{SAE J1939} +CONFIG\_CAN\_J1939 [=m] \textbf{[M]}\\* +SAE J1939\\* +Sagen Sie Y, um eine In-Kernel"=Unterstützung für den Sockeltyp J1939 zu haben. +Dies ermöglicht die Kommunikation gemäß SAE j1939.\\ +Die relevanten Teile im Kernel sind +SAE j1939-21 (Datenverbindung \& Transportprotokoll) +\&\\ SAE j1939-81 (Netzwerkverwaltung). + +\subsubsection{ISO 15765-2:2016 CAN transport protocol} +CONFIG\_CAN\_ISOTP [=m] \textbf{[M]}\\* +CAN"=Transportprotokolle bieten Unterstützung für segmentierte +Punkt"=zu"=Punkt"=Kommunikation zwischen CAN"=Knoten über zwei definierte +CAN"=Identifier. Da CAN"=Frames nur eine geringe Anzahl von Datenbytes +transportieren können (max. 8~Bytes für \glqq klassisches\grqq{} CAN und +max. 64~Bytes für CAN FD), wird diese Segmentierung benötigt, um längere +Protocol Data Units (PDU) zu transportieren, wie sie z.~B. für die +Fahrzeugdiagnose (UDS, ISO~14229) oder IP"=over"=CAN"=Verkehr benötigt werden. +Dieser Protokolltreiber implementiert Datenübertragungen gemäß +ISO~15765-2:2016 für \glqq klassische\grqq{} CAN"= und CAN FD"=Frame"=Typen. +Wenn Sie Fahrzeugdiagnosedienste (UDS) durchführen möchten, sagen Sie Y. + +\subsection{Bluetooth subsystem support \texorpdfstring{$\rightarrow$}{->}} +CONFIG\_BT [=m] \textbf{[M]}\\* +Bluetooth ist eine kostengünstige drahtlose Technologie mit geringem Stromverbrauch +und kurzer Reichweite. Sie wurde als Ersatz für Kabel und andere +Kurzstreckentechnologien wie IrDA entwickelt. Bluetooth arbeitet in einem +persönlichen Bereich (personal area range), der in der Regel bis zu 10~Meter reicht. +Weitere Informationen über Bluetooth finden Sie unter \url{https://www.bluetooth.com/}. +Das Bluetooth-Subsystem von Linux besteht aus mehreren Schichten: +\begin{itemize} +\item Bluetooth-Kern +\begin{itemize} +\item HCI Geräte- und Verbindungsmanager, Scheduler +\item SCO audio links +\item L2CAP (Logical Link Control and Adaptation Protocol) +\item SMP (Security Manager Protocol) auf LE (Low Energy) Verbindungen +\item ISO isochrone Verbindungen +\end{itemize} +\item HCI Gerätetreiber (Schnittstelle zur Hardware) +\item RFCOMM Modul (RFCOMM Protokoll) +\item BNEP Modul (Bluetooth Netzwerkkapselungsprotokoll) +\item CMTP-Modul (CAPI Message Transport Protocol) +\item HIDP-Modul (Protokoll für menschliche Schnittstellengeräte) +\end{itemize} +Sagen Sie hier Y, um die Bluetooth-Unterstützung in den Kernel zu kompilieren oder +sagen Sie M, um dies als Modul (bluetooth) zu kompilieren. +Um das Linux-Bluetooth-Subsystem zu nutzen, benötigen Sie mehrere +Userspace-Dienstprogramme wie hciconfig und bluetoothd. +Diese Dienstprogramme und Aktualisierungen für Bluetooth"=Kernelmodule werden in +den BlueZ-Paketen bereitgestellt. Weitere Informationen finden Sie unter +\url{http://www.bluez.org/}. + +\subsubsection{Bluetooth Classic (BR/EDR) features} +CONFIG\_BT\_BREDR [=y] \textbf{[Y]}\\* +Bluetooth Classic bietet Unterstützung für Basic Rate (BR), die mit Bluetooth +Version~1.0b oder höher verfügbar ist, und Unterstützung für Enhanced Data Rate (EDR), +die mit Bluetooth Version~2.0 oder höher verfügbar ist. + +\paragraph{RFCOMM protocol support}$~$\\ +CONFIG\_BT\_RFCOMM [=m] \textbf{[M]}\\* +RFCOMM bietet einen verbindungsorientierten Stream-Transport. +Die RFCOMM"=Unterstützung ist für Dialup Networking, OBEX und andere +Bluetooth"=Anwendungen erforderlich. Sagen Sie hier Y, um die +RFCOMM"=Unterstützung in den Kernel zu kompilieren oder sagen Sie M, +um sie als Modul (rfcomm) zu kompilieren. + +\subparagraph{RFCOMM TTY support}$~$\\ +CONFIG\_BT\_RFCOMM\_TTY [=y] \textbf{[Y]}\\* +This option enables TTY emulation support for RFCOMM channels. + +\paragraph{BNEP protocol support}$~$\\ +CONFIG\_BT\_BNEP [=m] \textbf{[M]}\\* +BNEP (Bluetooth Network Encapsulation Protocol) ist eine Ethernet"=Emulationsschicht +über Bluetooth. BNEP ist für Bluetooth PAN (Personal Area Network) erforderlich. +Sagen Sie hier Y, um BNEP"=Unterstützung in den Kernel zu kompilieren, oder +sagen Sie M, um es als Modul (bnep) zu kompilieren. + +\subparagraph{Multicast filter support}$~$\\ +CONFIG\_BT\_BNEP\_MC\_FILTER [=y] \textbf{[Y]}\\* +Diese Option aktiviert die Multicast"=Filterunterstützung für BNEP. + +\subparagraph{Protocol filter support}$~$\\ +CONFIG\_BT\_BNEP\_PROTO\_FILTER [=y] \textbf{[Y]}\\* +Mit dieser Option wird die Protokollfilterunterstützung für BNEP aktiviert. + +\paragraph{CMTP protocol support}$~$\\ +CONFIG\_BT\_CMTP [=m] \textbf{[M]}\\* +CMTP (CAPI Message Transport Protocol) ist eine Transportschicht für CAPI-Nachrichten. +CMTP ist für das Bluetooth Common ISDN Access Profile erforderlich. +Sagen Sie hier Y, um CMTP"=Unterstützung in den Kernel zu kompilieren oder +sagen Sie M, um es als Modul (cmtp) zu kompilieren. + +\paragraph{HIDP protocol support}$~$\\ +CONFIG\_BT\_HIDP [=m] \textbf{[M]}\\* +HIDP (Human Interface Device Protocol) ist eine Transportschicht für HID-Meldungen. +HIDP ist für das Bluetooth Human Interface Device Profile erforderlich. +Sagen Sie hier Y, um HIDP-Unterstützung in den Kernel zu kompilieren, +oder sagen Sie M, um es als Modul (hidp) zu kompilieren. + +\paragraph{Bluetooth High Speed (HS) features}$~$\\ +CONFIG\_BT\_HS [=n] \textbf{[N]}\\* +Bluetooth High Speed unterstützt das Off-Loading von Bluetooth"=Verbindungen über +die physikalische Schicht 802.11 (wifi), die mit Bluetooth Version 3.0 oder höher +verfügbar ist. + +\subsubsection{Bluetooth Low Energy (LE) features} +CONFIG\_BT\_LE [=y] \textbf{[Y]}\\* +Bluetooth Low Energy unterstützt eine energiesparende physikalische Schicht, +die mit Bluetooth Version 4.0 oder höher verfügbar ist. + +\paragraph{Bluetooth L2CAP Enhanced Credit Flow Control}$~$\\ +CONFIG\_BT\_LE\_L2CAP\_ECRED [=y] \textbf{[Y]}\\* +Bluetooth Low Energy L2CAP Enhanced Credit Flow Control verfügbar mit +Bluetooth Version~5.2 oder höher. +Dies kann durch die Übergabe von \texttt{bluetooth.enable\_ecred=$[1|0]$} in der +Kernel"=Befehlszeile außer Kraft gesetzt werden. + +\paragraph{Bluetooth 6LoWPAN support}$~$\\ +CONFIG\_BT\_6LOWPAN [=m] \textbf{[M]}\\* +IPv6-Kompression über Bluetooth Low Energy. + +\subsubsection{Enable LED triggers} +CONFIG\_BT\_LEDS [=y] \textbf{[Y]}\\* +Mit dieser Option können Sie einige LED-Trigger für verschiedene +Bluetooth"=Ereignisse auswählen. + +\subsubsection{Enable Microsoft extensions} +CONFIG\_BT\_MSFTEXT [=y] \textbf{[Y]}\\* +Diese Option ermöglicht die Unterstützung der von Microsoft definierten +HCI"=Anbietererweiterungen. + +\subsubsection{Enable Android Open Source Project extensions} +CONFIG\_BT\_AOSPEXT [=y] \textbf{[Y]}\\* +Diese Option ermöglicht die Unterstützung für die vom Android Open Source +Project definierten HCI"=Herstellererweiterungen. + +\subsubsection{Enable Bluetooth internals in debugfs} +CONFIG\_BT\_DEBUGFS [=y] \textbf{[Y]}\\* +Umfassende Informationen über interne Bluetooth-Zustände in \texttt{debugfs} +bereitstellen. + +\subsubsection{Bluetooth self testing support} +CONFIG\_BT\_SELFTEST [=n] \textbf{[N]}\\* +Führen Sie bei der Initialisierung des Bluetooth"=Subsystems Selbsttests durch. +Dies ist eine Entwickleroption und kann zu erheblichen Verzögerungen beim Booten +des Systems führen. +Wenn das Bluetooth"=Subsystem als Modul gebaut wird, werden die Testfälle als +erstes beim Laden des Moduls ausgeführt. +Wenn das Bluetooth"=Subsystem in das Kernel"=Image kompiliert wird, werden die +Testfälle erst spät in der Aufrufhierarchie ausgeführt. + +\subsubsection{Bluetooth device drivers \texorpdfstring{$\rightarrow$}{->}} +\textit{(Bluetooth-Gerätetreiber)} + +\paragraph{HCI USB driver}$~$\\ +CONFIG\_BT\_HCIBTUSB [=m] \textbf{[M]}\\* +Bluetooth HCI USB-Treiber. +Dieser Treiber ist erforderlich, wenn Sie Bluetooth"=Geräte mit USB"=Schnittstelle +verwenden möchten. +Sagen Sie hier Y, um die Unterstützung für Bluetooth"=USB"=Geräte in den Kernel zu +kompilieren, oder sagen Sie M, um sie als Modul (btusb) zu kompilieren. + +\subparagraph{Enable USB autosuspend for Bluetooth USB devices by default}$~$\\ +CONFIG\_BT\_HCIBTUSB\_AUTOSUSPEND [=y] \textbf{[Y]}\\* +Sagen Sie hier Y, um USB-Autosuspend für Bluetooth-USB-Geräte standardmäßig zu aktivieren. +Dies kann durch die Übergabe von \texttt{btusb.enable\_autosuspend=$[y|n]$} in der +Kernel"=Kommandozeile über"=schrieben werden. + +\subparagraph{Enable USB poll\_sync for Bluetooth USB devices by default}$~$\\ +CONFIG\_BT\_HCIBTUSB\_POLL\_SYNC [=y] \textbf{[Y]}\\* +poll\_sync synchronisiert die USB"=Daten"= und -Ereignis"=Endpunkte, indem es letzteren +Vorrang einräumt. +Sagen Sie hier Y, um USB poll\_sync für Bluetooth"=USB"=Geräte standardmäßig zu +aktivieren. + +\subparagraph{Broadcom protocol support}$~$\\ +CONFIG\_BT\_HCIBTUSB\_BCM [=y] \textbf{[Y]}\\* +Die Unterstützung des Broadcom-Protokolls ermöglicht den Download von Firmware +und Patchram für Broadcom"=Bluetooth"=Controller. +Sagen Sie hier Y, um Unterstützung für das Broadcom"=Protokoll zu kompilieren. + +\subparagraph{MediaTek protocol support}$~$\\ +CONFIG\_BT\_HCIBTUSB\_MTK [=y] \textbf{[Y]}\\* +Die Unterstützung des MediaTek-Protokolls ermöglicht den Firmware"=Download +und die Chip"=Initialisierung für MediaTek Bluetooth"=USB"=Controller. +Sagen Sie hier Y, um die Unterstützung für das MediaTek"=Protokoll zu kompilieren. + +\subparagraph{Realtek protocol support}$~$\\ +CONFIG\_BT\_HCIBTUSB\_RTL [=y] \textbf{[Y]}\\* +Die Unterstützung des Realtek"=Protokolls ermöglicht den Download von Firmware +und Konfiguration für Realtek"=Bluetooth"=Controller. +Sagen Sie hier Y, um Unterstützung für das Realtek"=Protokoll zu kompilieren. + +\paragraph{HCI SDIO driver}$~$\\ +CONFIG\_BT\_HCIBTSDIO [=m] \textbf{[M]}\\* +Bluetooth-HCI-SDIO-Treiber. +Dieser Treiber ist erforderlich, wenn Sie ein Bluetooth"=Gerät mit +SDIO"=Schnittstelle verwenden möchten. +Sagen Sie hier Y, um die Unterstützung für Bluetooth"=SDIO"=Geräte +in den Kernel zu kompilieren, oder sagen Sie M, um sie als Modul (btsdio) +zu kompilieren. + +\paragraph{HCI UART driver}$~$\\ +CONFIG\_BT\_HCIUART [=m] \textbf{[M]}\\* +Bluetooth HCI UART-Treiber. +Dieser Treiber ist erforderlich, wenn Sie Bluetooth"=Geräte mit serieller +Schnittstelle verwenden möchten. Sie benötigen diesen Treiber auch, wenn +Sie UART"=basierte Bluetooth PCMCIA- und CF"=Geräte wie Xircom Credit Card +Adapter und BrainBoxes Bluetooth PC Card verwenden. +Sagen Sie hier Y, um die Unterstützung für Bluetooth"=UART"=Geräte in den +Kernel zu kompilieren, oder sagen Sie M, um sie als Modul (hci\_uart) zu +kompilieren. + +\subparagraph{UART (H4) protocol support}$~$\\ +CONFIG\_BT\_HCIUART\_H4 [=y] \textbf{[Y]}\\* +UART (H4) ist ein serielles Protokoll für die Kommunikation zwischen +Bluetooth"=Gerät und Host. Dieses Protokoll ist für die meisten +Bluetooth"=Geräte mit UART"=Schnittstelle erforderlich, einschließlich +PCMCIA- und CF"=Karten. +Sagen Sie hier Y, um Unterstützung für das HCI UART (H4) Protokoll zu kompilieren. + +\subparagraph{UART Nokia H4+ protocol support}$~$\\ +CONFIG\_BT\_HCIUART\_NOKIA [=m] \textbf{[M]}\\* +Nokia H4+ ist ein serielles Protokoll für die Kommunikation zwischen +Bluetooth"=Gerät und Host. Dieses Protokoll ist für Bluetooth"=Geräte mit +UART"=Schnittstelle in Nokia"=Geräten erforderlich. +Sagen Sie hier Y, um Unterstützung für das H4+"=Protokoll von Nokia zu kompilieren. + +\subparagraph{BCSP protocol support}$~$\\ +CONFIG\_BT\_HCIUART\_BCSP [=y] \textbf{[Y]}\\* +BCSP (BlueCore Serial Protocol) ist ein serielles Protokoll für die Kommunikation +zwischen Bluetooth"=Gerät und Host. Dieses Protokoll ist für Bluetooth"=Geräte +erforderlich, die nicht auf dem CSR BlueCore"=Chip basieren, einschließlich +PCMCIA- und CF"=Karten. +Sagen Sie hier Y, um Unterstützung für das HCI BCSP"=Protokoll zu kompilieren. + +\subparagraph{Atheros AR300x serial support}$~$\\ +CONFIG\_BT\_HCIUART\_ATH3K [=y] \textbf{[Y]}\\* +HCIATH3K (HCI Atheros AR300x) ist ein serielles Protokoll für die Kommunikation +zwischen Host und Atheros AR300x Bluetooth"=Geräten. Mit diesem Protokoll können +AR300x"=Chips mit Unterstützung für die Energieverwaltung aktiviert werden. +Aktivieren Sie dies, wenn Sie ein serielles Bluetooth"=Gerät vom +Typ Atheros AR300x besitzen. +Sagen Sie hier Y, um Unterstützung für das HCI UART ATH3K Protokoll zu kompilieren. + +\subparagraph{HCILL protocol support}$~$\\ +CONFIG\_BT\_HCIUART\_LL [=y] \textbf{[Y]}\\* +HCILL (HCI Low Level) ist ein serielles Protokoll für die Kommunikation zwischen +Bluetooth"=Gerät und Host. Dieses Protokoll ist für serielle Bluetooth"=Geräte +erforderlich, die auf BRF"=Chips von Texas Instruments basieren. +Sagen Sie hier Y, um Unterstützung für das HCILL"=Protokoll zu kompilieren. + +\subparagraph{Three-wire UART (H5) protocol support}$~$\\ +CONFIG\_BT\_HCIUART\_3WIRE [=y] \textbf{[Y]}\\* +Der HCI Three-wire UART Transport Layer ermöglicht es, die Bluetooth HCI über +eine serielle Schnittstelle zu nutzen. Der HCI Three"=wire UART Transport Layer +geht davon aus, dass die UART"=Kommunikation Bitfehler, Overrun"=Fehler oder +Burst"=Fehler aufweisen kann, wodurch CTS/RTS"=Leitungen überflüssig werden. +Sagen Sie hier Y, um Unterstützung für das Three"=wire UART"=Protokoll +zu kompilieren. + +\subparagraph{Intel protocol support}$~$\\ +CONFIG\_BT\_HCIUART\_INTEL [=y] \textbf{[Y]}\\* +Die Unterstützung des Intel"=Protokolls ermöglicht Bluetooth HCI über die +serielle Schnittstelle für Intel"=Bluetooth"=Controller. +Sagen Sie hier Y, um die Unterstützung für das Intel"=Protokoll zu kompilieren. + +\subparagraph{Broadcom protocol support}$~$\\ +CONFIG\_BT\_HCIUART\_BCM [=y] \textbf{[Y]}\\* +Die Unterstützung des Broadcom"=Protokolls ermöglicht Bluetooth HCI über die +serielle Schnittstelle für Broadcom Bluetooth"=Controller. +Sagen Sie hier Y, um Unterstützung für das Broadcom"=Protokoll zu kompilieren. + +\subparagraph{Realtek protocol support}$~$\\ +CONFIG\_BT\_HCIUART\_RTL [=y] \textbf{[Y]}\\* +Die Unterstützung des Realtek-Protokolls ermöglicht Bluetooth HCI über eine +serielle 3-Draht"=Schnittstelle für Realtek Bluetooth"=Controller. +Sagen Sie hier Y, um Unterstützung für das Realtek"=Protokoll zu kompilieren. + +\subparagraph{Qualcomm Atheros protocol support}$~$\\ +CONFIG\_BT\_HCIUART\_QCA [=y] \textbf{[Y]}\\* +Das Qualcomm Atheros-Protokoll unterstützt die HCI-In-Band"=Sleep"=Funktion +über die serielle Schnittstelle (H4) zwischen Controller und Host. +Dieses Protokoll ist für die UART-Taktsteuerung für QCA"=Bluetooth"=Geräte +erforderlich. +Sagen Sie hier Y, um Unterstützung für das QCA-Protokoll zu kompilieren. + +\subparagraph{Intel AG6XX protocol support}$~$\\ +CONFIG\_BT\_HCIUART\_AG6XX [=y] \textbf{[Y]}\\* +Die Unterstützung des Intel/AG6XX"=Protokolls ermöglicht Bluetooth HCI über +die serielle Schnittstelle für Intel ibt 2.1 Bluetooth"=Controller. +Sagen Sie hier Y, um Unterstützung für das Intel AG6XX"=Protokoll +zu kompilieren. + +\subparagraph{Marvell protocol support}$~$\\ +CONFIG\_BT\_HCIUART\_MRVL [=y] \textbf{[Y]}\\* +Marvell ist ein serielles Protokoll für die Kommunikation zwischen +Bluetooth"=Gerät und Host. Dieses Protokoll ist für die meisten +Marvell"=Bluetooth"=Geräte mit UART"=Schnittstelle erforderlich. +Sagen Sie hier Y, um Unterstützung für das HCI MRVL"=Protokoll zu kompilieren. + +\subparagraph{HCI BCM203x USB driver}$~$\\ +CONFIG\_BT\_HCIBCM203X [=m] \textbf{[M]}\\* +Bluetooth HCI BCM203x USB-Treiber. +Dieser Treiber bietet den Mechanismus zum Laden der Firmware für die Broadcom +Blutonium"=basierten Geräte. +Sagen Sie hier Y, um die Unterstützung für HCI BCM203x"=Geräte in den Kernel zu +kompilieren oder sagen Sie M, um dies als Modul (bcm203x) zu kompilieren. + +\subparagraph{HCI BCM4377/4378/4387 PCIe driver}$~$\\ +CONFIG\_BT\_HCIBCM4377 [=m] \textbf{[M]}\\* +Unterstützung für Broadcom BCM4377/4378/4387 Bluetooth"=Chipsätze, die über +PCIe angeschlossen sind. Diese sind in der Regel in Apple"=Geräten zu finden. +Sagen Sie hier Y, um Unterstützung für Geräte der HCI BCM4377"=Familie in den +Kernel zu kompilieren, oder sagen Sie M, um dies als Modul (hci\_bcm4377) +zu kompilieren. + \end{document}