Home | History | Annotate | Download | only in bluetooth
History log of /src/sys/dev/bluetooth/btuart.c
RevisionDateAuthorComments
 1.32  05-Jul-2024  rin sys: Drop redundant NULL check before m_freem(9)

m_freem(9) safely has accepted NULL argument at least since 4.2BSD:
https://www.tuhs.org/cgi-bin/utree.pl?file=4.2BSD/usr/src/sys/sys/uipc_mbuf.c

Compile-tested on amd64/ALL.

Suggested by knakahara@
 1.31  26-Oct-2022  riastradh branches: 1.31.8;
btuart(4): Convert to ttylock/ttyunlock.
 1.30  28-Jun-2022  plunky remove KASSERT() checking for t_oproc at open since assigning this line
discipline to a pty may not have that set. Instead do a runtime check to
ensure that the function exists before calling it, as ttstart() handles it.

Same code in btuart.c, bcsp.c and bth5.c

Reported-by: syzbot+766981eef92a3cd0352a@syzkaller.appspotmail.com
 1.29  24-Jan-2019  knakahara Add comments about D_MPSAFE to functions called as struct linesw.l_ioctl.
 1.28  20-Aug-2015  christos branches: 1.28.8; 1.28.16; 1.28.18;
include "ioconf.h" to get the 'void <driver>attach(int count);' prototype.
 1.27  20-May-2014  rmind branches: 1.27.4;
netbt: rename some attach/detach functions to have _pcb suffix, so
we could use standard attach/detach naming for pr_usrreq functions.
No functional change.
 1.26  31-Jul-2011  uebayasi branches: 1.26.12; 1.26.26;
Put back #include "ioconf.h" per popular demand.
 1.25  25-May-2011  uebayasi Declare cfdrivers using extern rather than including ioconf.h.
 1.24  18-Feb-2010  kiyohara branches: 1.24.2; 1.24.4;
Remove unnecessary line-feed.
 1.23  12-May-2009  cegger branches: 1.23.2;
struct cfdata * -> cfdata_t, no functional changes intended.
 1.22  07-May-2009  elad Introduce actions/requests to handle authorization for ppp(4), sl(4),
strip(4), btuart(4) and bcsp(4) network interfaces and devices.

Mailing list reference:

http://mail-index.netbsd.org/tech-kern/2009/04/27/msg004955.html
 1.21  26-Apr-2009  elad Authorizing actions from the generic scope using a device scope wrapper
is a big no-no.

As painful as it is, use kauth_authorize_generic() for now.
 1.20  11-Jan-2009  christos branches: 1.20.2;
merge christos-time_t
 1.19  12-Jun-2008  cegger branches: 1.19.4; 1.19.10;
use device_lookup_private to get softc
 1.18  15-Apr-2008  plunky branches: 1.18.2; 1.18.4; 1.18.6; 1.18.8;
some changes to serial bluetooth host controller interfaces

btuartd(8) should be named btattach(8) for consistency
with other parts of NetBSD

make btattach(8) a single-use tool for less complexity

device specicific initialisation (from btuart(4)) is carried
out prior to activating the line discipline (in btattach(8)),
which simplifies the API somewhat and means that the user
tool and the kernel do not need to be kept in sync.

btuart(4) driver is much reduced; naming is made consistent
and all tsleep() and delay() are removed to userland
 1.17  15-Dec-2007  perry branches: 1.17.6;
__FUNCTION__ -> __func__
 1.16  02-Dec-2007  kiyohara branches: 1.16.2; 1.16.6;
Print name of firmware on fail for firmware_open().
 1.15  02-Dec-2007  kiyohara Add support bgb2xx. (not test X-)
Add configuration rate with ericsson.
Change initialization at stlc2500.
Obsolate BTUART_HCITYPE_BT2000C.
 1.14  28-Nov-2007  plunky Clean up the way that bluetooth drivers attach to the bluetooth stack,
to remove the frobbing that drivers must do in the hci_unit structure.

- driver provides a static const interface descriptor
- hci_unit is allocated by hci_attach() rather than part of softc
- statistics are compiled by driver and provided on request
- driver provides output methods and is responsible for output queue
- stack provides input methods and is responsible for input queue
- mutex is used to arbitrate device queue access
 1.13  11-Nov-2007  plunky convert device printf() usages to aprint_xxxx()
 1.12  10-Nov-2007  plunky use more device_t and device_xxx() accessors

make bluetooth stack keep device_t instead of softc pointer as
device is not necessarily part of softc, and pass device_t to
driver callbacks. hci_devname is no longer required.
 1.11  10-Nov-2007  ad Call ttyflush() with tty_lock held.
 1.10  03-Nov-2007  plunky branches: 1.10.2;
switch devices to using CFATTACH_DECL_NEW()
softc no longer contains 'struct device' by default
use 'device_t' instead of 'struct device *'
use device_xxx() accessor functions
remove casting of 'xxx_softc *' & 'struct device *'
use aprint_xxx_dev() routines
 1.9  19-Oct-2007  ad machine/{bus,cpu,intr}.h -> sys/{bus,cpu,intr}.h
 1.8  03-Sep-2007  kiyohara branches: 1.8.4;
No need to check the NULL, m_gethdr() calls always with M_WAIT.
 1.7  15-Aug-2007  kiyohara branches: 1.7.2;
Remove BTUART_DEBUG.
 1.6  23-Jul-2007  kiyohara branches: 1.6.4; 1.6.6;
Remove printf for debugging.
 1.5  13-Mar-2007  plunky branches: 1.5.6;
remove extraneous whitespace
 1.4  12-Mar-2007  kiyohara branches: 1.4.2;
Not KAUTH_DEVICE_TTY_OPEN but KAUTH_GENERIC_ISSUSER is used.
 1.3  06-Mar-2007  plunky branches: 1.3.2;
fix typo
 1.2  04-Mar-2007  christos Kill caddr_t; there will be some MI fallout, but it will be fixed shortly.
 1.1  20-Feb-2007  kiyohara branches: 1.1.2; 1.1.6;
Supprot Bluetooth HCI UART (H4) driver and daemon.
 1.1.6.4  24-Mar-2007  yamt sync with head.
 1.1.6.3  12-Mar-2007  rmind Sync with HEAD.
 1.1.6.2  27-Feb-2007  yamt - sync with head.
- move sched_changepri back to kern_synch.c as it doesn't know PPQ anymore.
 1.1.6.1  20-Feb-2007  yamt file btuart.c was added on branch yamt-idlelwp on 2007-02-27 16:53:51 +0000
 1.1.2.7  21-Jan-2008  yamt sync with head
 1.1.2.6  07-Dec-2007  yamt sync with head
 1.1.2.5  15-Nov-2007  yamt sync with head.
 1.1.2.4  27-Oct-2007  yamt sync with head.
 1.1.2.3  03-Sep-2007  yamt sync with head.
 1.1.2.2  26-Feb-2007  yamt sync with head.
 1.1.2.1  20-Feb-2007  yamt file btuart.c was added on branch yamt-lazymbuf on 2007-02-26 09:10:00 +0000
 1.3.2.5  23-Oct-2007  ad Sync with head.
 1.3.2.4  09-Oct-2007  ad Sync with head.
 1.3.2.3  20-Aug-2007  ad Sync with HEAD.
 1.3.2.2  10-Apr-2007  ad Sync with head.
 1.3.2.1  13-Mar-2007  ad Sync with head.
 1.4.2.1  11-Jul-2007  mjf Sync with head.
 1.5.6.3  10-Sep-2007  skrll Sync with HEAD.
 1.5.6.2  03-Sep-2007  skrll Sync with HEAD.
 1.5.6.1  15-Aug-2007  skrll Sync with HEAD.
 1.6.6.2  23-Jul-2007  kiyohara Remove printf for debugging.
 1.6.6.1  23-Jul-2007  kiyohara file btuart.c was added on branch matt-mips64 on 2007-07-23 03:45:28 +0000
 1.6.4.6  03-Dec-2007  joerg Sync with HEAD.
 1.6.4.5  11-Nov-2007  joerg Sync with HEAD.
 1.6.4.4  04-Nov-2007  jmcneill Sync with HEAD.
 1.6.4.3  26-Oct-2007  joerg Sync with HEAD.

Follow the merge of pmap.c on i386 and amd64 and move
pmap_init_tmp_pgtbl into arch/x86/x86/pmap.c. Modify the ACPI wakeup
code to restore CR4 before jumping back into kernel space as the large
page option might cover that.
 1.6.4.2  03-Sep-2007  jmcneill Sync with HEAD.
 1.6.4.1  16-Aug-2007  jmcneill Sync with HEAD.
 1.7.2.2  09-Jan-2008  matt sync with HEAD
 1.7.2.1  06-Nov-2007  matt sync with HEAD
 1.8.4.2  13-Nov-2007  bouyer Sync with HEAD
 1.8.4.1  25-Oct-2007  bouyer Sync with HEAD.
 1.10.2.3  27-Dec-2007  mjf Sync with HEAD.
 1.10.2.2  08-Dec-2007  mjf Sync with HEAD.
 1.10.2.1  19-Nov-2007  mjf Sync with HEAD.
 1.16.6.1  02-Jan-2008  bouyer Sync with HEAD
 1.16.2.1  26-Dec-2007  ad Sync with head.
 1.17.6.3  17-Jan-2009  mjf Sync with HEAD.
 1.17.6.2  29-Jun-2008  mjf Sync with HEAD.
 1.17.6.1  02-Jun-2008  mjf Sync with HEAD.
 1.18.8.1  18-Jun-2008  simonb Sync with head.
 1.18.6.1  23-Jun-2008  wrstuden Sync w/ -current. 34 merge conflicts to follow.
 1.18.4.3  11-Mar-2010  yamt sync with head
 1.18.4.2  16-May-2009  yamt sync with head
 1.18.4.1  04-May-2009  yamt sync with head.
 1.18.2.1  17-Jun-2008  yamt sync with head.
 1.19.10.2  30-Dec-2008  christos fix dev_t format
 1.19.10.1  12-Jun-2008  christos file btuart.c was added on branch christos-time_t on 2008-12-30 19:32:51 +0000
 1.19.4.2  28-Apr-2009  skrll Sync with HEAD.
 1.19.4.1  19-Jan-2009  skrll Sync with HEAD.
 1.20.2.1  13-May-2009  jym Sync with HEAD.

Commit is split, to avoid a "too many arguments" protocol error.
 1.23.2.1  30-Apr-2010  uebayasi Sync with HEAD.
 1.24.4.1  06-Jun-2011  jruoho Sync with HEAD.
 1.24.2.1  31-May-2011  rmind sync with head
 1.26.26.1  10-Aug-2014  tls Rebase.
 1.26.12.2  03-Dec-2017  jdolecek update from HEAD
 1.26.12.1  20-Aug-2014  tls Rebase to HEAD as of a few days ago.
 1.27.4.1  22-Sep-2015  skrll Sync with HEAD
 1.28.18.1  10-Jun-2019  christos Sync with HEAD
 1.28.16.1  26-Jan-2019  pgoyette Sync with HEAD
 1.28.8.1  17-May-2017  pgoyette At suggestion of chuq@, modify config_attach_pseudo() to return with a
reference held on the device.

Adapt callers to expect the reference to exist, and to ensure that the
reference is released.
 1.31.8.1  02-Aug-2025  perseant Sync with HEAD

RSS XML Feed