Date: Fri, 13 Jul 2018 15:11:18 +0530 From: Rajesh Kumar <rajfbsd@gmail.com> To: gurenchan@gmail.com Cc: freebsd-drivers@freebsd.org Subject: Re: Any read materials to understand uart device driver architecture in FreeBSD. Message-ID: <CAAO%2BANNH5kF=oYqPWK7bozStYC7p3mJbXZca1x-O6Gs30byyrw@mail.gmail.com> In-Reply-To: <CALM2mEmKiMFj3K0%2B09%2BpHvxM3btSLGbRwhigVj_dhu5yp6sB=Q@mail.gmail.com> References: <CAAO%2BANMBNn9bJoYBq28nK-TaHZ05sPkrGfK7HadZSr8jVz6x%2BA@mail.gmail.com> <CALM2mEmKiMFj3K0%2B09%2BpHvxM3btSLGbRwhigVj_dhu5yp6sB=Q@mail.gmail.com>
next in thread | previous in thread | raw e-mail | index | archive | help
Hi blubee, Thanks for your quick response. Definitely, these two books are good reads. But, I was looking for some information regarding the code design from the perspective of existing uart code base in FreeBSD source (sys/dev/uart), not just generic device driver concepts and overall system architecture. Anyway, thanks again for your inputs. On Fri, Jul 13, 2018 at 2:40 PM blubee blubeeme <gurenchan@gmail.com> wrote: > > On Fri, Jul 13, 2018, 16:57 Rajesh Kumar <rajfbsd@gmail.com> wrote: > >> Hi, >> >> I am trying to understand the uart device drivers architecture in FreeBSD. >> I see the following set of file in sys/dev/uart. >> >> a) uart_bus_xxxx -> one file each for acpi, pci, isa bus etc., >> b) uart_core - uart common routines >> c) uart_cpu_xxxx -> one file each for x86, powerpc etc., >> d) uart_dev_xxxx -> I assume this is one file each for seperate uart IP's. >> e) some other files. >> >> Questions : >> a) Is there any good read materials to understand the uart driver >> architecutre (from code perspective) in FreeBSD? >> b) If I need to write a new uart driver for a uart IP, what are the things >> to do? I assume i need to have a seperate uart_dev_* file and need to add >> that device ID in appropriate uart_bus_* file? what other things I need to >> take care? >> c) In uart_bus_acpi.c and uart_bus_isa.c, I see the definitions of >> acpi_ns8250_ids and isa_ns8250_ids list. Where are those ID's derived >> from? I understand PNP ID, ACPI ID and PCI Vendor and Device ID, but not >> sure about those above mentioned IDs? >> >> Thanks, >> Rajesh. >> _______________________________________________ >> freebsd-drivers@freebsd.org mailing list >> https://lists.freebsd.org/mailman/listinfo/freebsd-drivers >> To unsubscribe, send any mail to "freebsd-drivers-unsubscribe@freebsd.org >> " >> > > Writing drivers: https://nostarch.com/bsddrivers.htm > > FreeBSD architecture: > https://www.amazon.com/Design-Implementation-FreeBSD-Operating-System/dp/0321968972 > >>
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?CAAO%2BANNH5kF=oYqPWK7bozStYC7p3mJbXZca1x-O6Gs30byyrw>