Skip site navigation (1)Skip section navigation (2)
Date:      Sat, 02 Sep 2017 08:10:49 +0000
From:      "Thomas Mueller" <mueller6722@twc.com>
To:        freebsd-wireless@freebsd.org
Subject:   Re: Adding wifi source code
Message-ID:  <F1.BE.31699.F876AA95@dnvrco-omsmta03>
References:  <CAFg2nZZRgenQOua4uhx_mPr1qUd9f3dt_2=ztfyjOBks7A3Ycg@mail.gmail.com> <68.D0.25924.050D9A95@dnvrco-omsmta02> <CALM2mEniO%2Bma1Fh_mW-xfk07QJKA2cF7jO9SvttMXWsXf4NgEA@mail.gmail.com> <CAFd4kYCXGzF8AzyBhPbMnEqK9QxdfTMf3PqXzG7wJwvb00txNA@mail.gmail.com>

next in thread | previous in thread | raw e-mail | index | archive | help
> Here's a pdf giving a decent overview:
> https://www.bsdcan.org/2006/papers/freebsd.device.driver.slides.pdf

> But, the FreeBSD handbook also goes over the process as well.

> https://www.freebsd.org/doc/en_US.ISO8859-1/books/arch-handbook/driverbasics.html
        
> For the guy that took Linux drivers, you might want to look into the Linux
> Emulator, that would be the easiest path especially if those Linux drivers
> includes a lot of Linux specific headers.
        
> The NetBSD drivers should be a bit easier to port.
        
> Best,
> Owen

I downloaded it but haven't read yet.

Actually, it's the arch-handbook, not in the regular FreeBSD handbook.

Thanks for the leads!

> I was planning on also porting over the Atheros AR9271 driver from NetBSD
> (athn(4) /usr/src/sys/dev/usb/if_athn_usb.c), but not until I finish the
> current device I am working on. It might not be for a while though. There
> is likely a lot of shared code with ath(4) on FreeBSD
> (/usr/src/sys/dev/athn). NetBSD seems to separate all code between USB and
> PCI, whereas FreeBSD combines drivers. Let me know if I can help out, as I
> already own this device and would be willing to test out code or
> troubleshoot with you.
        
> I am currently working on another driver from Linux to FreeBSD. The core
> concepts are the same, but a lot of code is in different order. FreeBSD
> drivers have an attach function that assign function pointers to the softc
> struct. The Linux equivalent is in DRIVERNAME_ops. In my case, this:
> http://src.illumos.org/source/xref/linux-master/drivers/net/wireless/realtek/rtlwifi/rtl8188ee/sw.c#224

> Hope this helps. But yes, would love to work on AR9271!

What is the rtl8188ee?  Maybe I'd recognize the brand and model.

I have Hiro H50191, which uses rsu driver.

That last URL looks like something related to Illumos and OpenIndiana.

My Atheros AR9271 is (quasi-)USB, an inseparable part of the motherboard in contrast to the Hiro H50191 which is a USB-stick wireless adapter.

It has sometimes worked on NetBSD, but more often would fail to load firmware.

On latest NetBSD-current, it stops the kernel from booting unless I disable it or comment out in kernel config.  GENERIC kernel reboots immediately without showing any messages.

OpenBSD also has AR9271 driver and Realtek re.  I have NetBSD installations but no OpenBSD.

I would like, at first, if possible, when I have a driver to build, to build the module rather than the whole kernel every time.

I am familiar with C and C++ but think I need to brush up.  Any online leads/references?

Tom




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?F1.BE.31699.F876AA95>