Home | History | Annotate | only in /src/sys/external/bsd/vchiq/dist/interface
History log of /src/sys/external/bsd/vchiq/dist/interface
RevisionDateAuthorComments
 1.2 19-Sep-2013  skrll Use the common list.h
 1.1 08-Mar-2013  jmcneill branches: 1.1.6; 1.1.8;
BCM2835 VCHIQ device driver
 1.1.8.1 18-May-2014  rmind sync with head
 1.1.6.3 20-Aug-2014  tls Rebase to HEAD as of a few days ago.
 1.1.6.2 23-Jun-2013  tls resync from head
 1.1.6.1 08-Mar-2013  tls file list.h was added on branch tls-maxphys on 2013-06-23 06:20:23 +0000
 1.10 05-Nov-2017  skrll Use IPL_VM and IST_MPSAFE instead of IPL_SCHED
 1.9 02-Sep-2014  jmcneill IPL_VM -> IPL_SCHED, and callout_stop -> callout_halt
 1.8 25-Apr-2014  skrll branches: 1.8.2;
Trailing whitespace
 1.7 12-Apr-2014  skrll Remove buggy linux completion API emulation and use the common version.
 1.6 27-Mar-2014  skrll branches: 1.6.2;
Simplify the semaphore code a little
 1.5 27-Mar-2014  skrll KNF
 1.4 27-Mar-2014  skrll bzero -> memset
 1.3 06-Sep-2013  skrll Change the cv name slightly
 1.2 24-Mar-2013  jmcneill branches: 1.2.4; 1.2.6;
sema mutex needs to be IPL_VM
 1.1 08-Mar-2013  jmcneill BCM2835 VCHIQ device driver
 1.2.6.1 18-May-2014  rmind sync with head
 1.2.4.4 03-Dec-2017  jdolecek update from HEAD
 1.2.4.3 20-Aug-2014  tls Rebase to HEAD as of a few days ago.
 1.2.4.2 23-Jun-2013  tls resync from head
 1.2.4.1 24-Mar-2013  tls file vchi_bsd.c was added on branch tls-maxphys on 2013-06-23 06:20:23 +0000
 1.6.2.1 10-Aug-2014  tls Rebase.
 1.8.2.2 22-May-2014  yamt sync with head.

for a reference, the tree before this commit was tagged
as yamt-pagecache-tag8.

this commit was splitted into small chunks to avoid
a limitation of cvs. ("Protocol error: too many arguments")
 1.8.2.1 25-Apr-2014  yamt file vchi_bsd.c was added on branch yamt-pagecache on 2014-05-22 11:40:59 +0000
 1.19 06-Feb-2022  martin vchiq(4): Fix llvm build with only one loff_t definition.
Author: Taylor R Campbell <riastradh@NetBSD.org>
 1.18 19-Dec-2021  riastradh Don't redefine stuff that common now has

Preferring common to avoid licensing mish-mash


Author: Maya Rashish <maya@NetBSD.org>
Committer: Taylor R Campbell <riastradh@NetBSD.org>
 1.17 26-Sep-2020  skrll Define isb(), dsb(option), and dmb(option)

Catch up with vchiq upstream to allow this.
 1.16 26-Sep-2020  skrll Trailing whitespace
 1.15 28-Aug-2018  skrll Remove stuff now in sys/external/bsd/common
 1.14 05-Nov-2017  skrll branches: 1.14.2; 1.14.4;
Use IPL_VM and IST_MPSAFE instead of IPL_SCHED
 1.13 11-Sep-2017  maya keep dsb in vchiq code.

dsb refers to an arm instruction, so it won't be used on MI code.
 1.12 11-Sep-2017  maya Use common barrier.h rather than separate implementation. NFCI
 1.11 11-Sep-2017  maya Include opt_multiprocessor.h for MULTIPROCESSOR
 1.10 12-Jan-2017  skrll Sync memory barriers with sys/external/bsd/drm2/include/asm/barrier.h
 1.9 25-Oct-2014  skrll branches: 1.9.2; 1.9.4;
G/C some unused code.
 1.8 02-Sep-2014  jmcneill IPL_VM -> IPL_SCHED, and callout_stop -> callout_halt
 1.7 12-Apr-2014  skrll branches: 1.7.2;
Remove buggy linux completion API emulation and use the common version.
 1.6 27-Mar-2014  skrll branches: 1.6.2;
Merge upstream fixes.
 1.5 26-Mar-2014  skrll KNF
 1.4 19-Sep-2013  skrll Use the common list.h
 1.3 05-Sep-2013  skrll Do a better job of matching some linux APIs. Still not quite working.
 1.2 25-Mar-2013  jmcneill branches: 1.2.4; 1.2.6;
fix atomic_cmpxchg wrapper
 1.1 08-Mar-2013  jmcneill BCM2835 VCHIQ device driver
 1.2.6.1 18-May-2014  rmind sync with head
 1.2.4.4 03-Dec-2017  jdolecek update from HEAD
 1.2.4.3 20-Aug-2014  tls Rebase to HEAD as of a few days ago.
 1.2.4.2 23-Jun-2013  tls resync from head
 1.2.4.1 25-Mar-2013  tls file vchi_bsd.h was added on branch tls-maxphys on 2013-06-23 06:20:23 +0000
 1.6.2.1 10-Aug-2014  tls Rebase.
 1.7.2.2 22-May-2014  yamt sync with head.

for a reference, the tree before this commit was tagged
as yamt-pagecache-tag8.

this commit was splitted into small chunks to avoid
a limitation of cvs. ("Protocol error: too many arguments")
 1.7.2.1 12-Apr-2014  yamt file vchi_bsd.h was added on branch yamt-pagecache on 2014-05-22 11:40:59 +0000
 1.9.4.1 20-Mar-2017  pgoyette Sync with HEAD
 1.9.2.1 05-Feb-2017  skrll Sync with HEAD
 1.14.4.1 10-Jun-2019  christos Sync with HEAD
 1.14.2.1 06-Sep-2018  pgoyette Sync with HEAD

Resolve a couple of conflicts (result of the uimin/uimax changes)
 1.2 12-Jan-2017  skrll Sync with latest github/raspberrypi/linux sources

XXX should provide a vchiq2netbsd and cvs import
 1.1 08-Mar-2013  jmcneill branches: 1.1.6; 1.1.14; 1.1.18; 1.1.22;
BCM2835 VCHIQ device driver
 1.1.22.1 20-Mar-2017  pgoyette Sync with HEAD
 1.1.18.1 05-Feb-2017  skrll Sync with HEAD
 1.1.14.2 22-May-2014  yamt sync with head.

for a reference, the tree before this commit was tagged
as yamt-pagecache-tag8.

this commit was splitted into small chunks to avoid
a limitation of cvs. ("Protocol error: too many arguments")
 1.1.14.1 08-Mar-2013  yamt file vchi.h was added on branch yamt-pagecache on 2014-05-22 11:40:59 +0000
 1.1.6.3 03-Dec-2017  jdolecek update from HEAD
 1.1.6.2 23-Jun-2013  tls resync from head
 1.1.6.1 08-Mar-2013  tls file vchi.h was added on branch tls-maxphys on 2013-06-23 06:20:23 +0000
 1.2 27-Mar-2014  skrll branches: 1.2.4;
Merge upstream fixes.
 1.1 08-Mar-2013  jmcneill branches: 1.1.6; 1.1.8;
BCM2835 VCHIQ device driver
 1.1.8.1 18-May-2014  rmind sync with head
 1.1.6.3 20-Aug-2014  tls Rebase to HEAD as of a few days ago.
 1.1.6.2 23-Jun-2013  tls resync from head
 1.1.6.1 08-Mar-2013  tls file vchi_cfg.h was added on branch tls-maxphys on 2013-06-23 06:20:23 +0000
 1.2.4.2 22-May-2014  yamt sync with head.

for a reference, the tree before this commit was tagged
as yamt-pagecache-tag8.

this commit was splitted into small chunks to avoid
a limitation of cvs. ("Protocol error: too many arguments")
 1.2.4.1 27-Mar-2014  yamt file vchi_cfg.h was added on branch yamt-pagecache on 2014-05-22 11:40:59 +0000
 1.1 08-Mar-2013  jmcneill branches: 1.1.6; 1.1.14;
BCM2835 VCHIQ device driver
 1.1.14.2 22-May-2014  yamt sync with head.

for a reference, the tree before this commit was tagged
as yamt-pagecache-tag8.

this commit was splitted into small chunks to avoid
a limitation of cvs. ("Protocol error: too many arguments")
 1.1.14.1 08-Mar-2013  yamt file vchi_cfg_internal.h was added on branch yamt-pagecache on 2014-05-22 11:40:59 +0000
 1.1.6.2 23-Jun-2013  tls resync from head
 1.1.6.1 08-Mar-2013  tls file vchi_cfg_internal.h was added on branch tls-maxphys on 2013-06-23 06:20:23 +0000
 1.2 12-Jan-2017  skrll Sync with latest github/raspberrypi/linux sources

XXX should provide a vchiq2netbsd and cvs import
 1.1 08-Mar-2013  jmcneill branches: 1.1.6; 1.1.14; 1.1.18; 1.1.22;
BCM2835 VCHIQ device driver
 1.1.22.1 20-Mar-2017  pgoyette Sync with HEAD
 1.1.18.1 05-Feb-2017  skrll Sync with HEAD
 1.1.14.2 22-May-2014  yamt sync with head.

for a reference, the tree before this commit was tagged
as yamt-pagecache-tag8.

this commit was splitted into small chunks to avoid
a limitation of cvs. ("Protocol error: too many arguments")
 1.1.14.1 08-Mar-2013  yamt file vchi_common.h was added on branch yamt-pagecache on 2014-05-22 11:40:59 +0000
 1.1.6.3 03-Dec-2017  jdolecek update from HEAD
 1.1.6.2 23-Jun-2013  tls resync from head
 1.1.6.1 08-Mar-2013  tls file vchi_common.h was added on branch tls-maxphys on 2013-06-23 06:20:23 +0000
 1.1 08-Mar-2013  jmcneill branches: 1.1.6; 1.1.14;
BCM2835 VCHIQ device driver
 1.1.14.2 22-May-2014  yamt sync with head.

for a reference, the tree before this commit was tagged
as yamt-pagecache-tag8.

this commit was splitted into small chunks to avoid
a limitation of cvs. ("Protocol error: too many arguments")
 1.1.14.1 08-Mar-2013  yamt file vchi_mh.h was added on branch yamt-pagecache on 2014-05-22 11:40:59 +0000
 1.1.6.2 23-Jun-2013  tls resync from head
 1.1.6.1 08-Mar-2013  tls file vchi_mh.h was added on branch tls-maxphys on 2013-06-23 06:20:23 +0000
 1.1 08-Mar-2013  jmcneill branches: 1.1.6; 1.1.14;
BCM2835 VCHIQ device driver
 1.1.14.2 22-May-2014  yamt sync with head.

for a reference, the tree before this commit was tagged
as yamt-pagecache-tag8.

this commit was splitted into small chunks to avoid
a limitation of cvs. ("Protocol error: too many arguments")
 1.1.14.1 08-Mar-2013  yamt file connection.h was added on branch yamt-pagecache on 2014-05-22 11:40:59 +0000
 1.1.6.2 23-Jun-2013  tls resync from head
 1.1.6.1 08-Mar-2013  tls file connection.h was added on branch tls-maxphys on 2013-06-23 06:20:23 +0000
 1.1 08-Mar-2013  jmcneill branches: 1.1.6; 1.1.14;
BCM2835 VCHIQ device driver
 1.1.14.2 22-May-2014  yamt sync with head.

for a reference, the tree before this commit was tagged
as yamt-pagecache-tag8.

this commit was splitted into small chunks to avoid
a limitation of cvs. ("Protocol error: too many arguments")
 1.1.14.1 08-Mar-2013  yamt file message.h was added on branch yamt-pagecache on 2014-05-22 11:40:59 +0000
 1.1.6.2 23-Jun-2013  tls resync from head
 1.1.6.1 08-Mar-2013  tls file message.h was added on branch tls-maxphys on 2013-06-23 06:20:23 +0000
 1.2 12-Jan-2017  skrll Sync with latest github/raspberrypi/linux sources

XXX should provide a vchiq2netbsd and cvs import
 1.1 08-Mar-2013  jmcneill branches: 1.1.6; 1.1.14; 1.1.18; 1.1.22;
BCM2835 VCHIQ device driver
 1.1.22.1 20-Mar-2017  pgoyette Sync with HEAD
 1.1.18.1 05-Feb-2017  skrll Sync with HEAD
 1.1.14.2 22-May-2014  yamt sync with head.

for a reference, the tree before this commit was tagged
as yamt-pagecache-tag8.

this commit was splitted into small chunks to avoid
a limitation of cvs. ("Protocol error: too many arguments")
 1.1.14.1 08-Mar-2013  yamt file vchiq.h was added on branch yamt-pagecache on 2014-05-22 11:40:59 +0000
 1.1.6.3 03-Dec-2017  jdolecek update from HEAD
 1.1.6.2 23-Jun-2013  tls resync from head
 1.1.6.1 08-Mar-2013  tls file vchiq.h was added on branch tls-maxphys on 2013-06-23 06:20:23 +0000
 1.1 08-Mar-2013  jmcneill branches: 1.1.6; 1.1.14;
BCM2835 VCHIQ device driver
 1.1.14.2 22-May-2014  yamt sync with head.

for a reference, the tree before this commit was tagged
as yamt-pagecache-tag8.

this commit was splitted into small chunks to avoid
a limitation of cvs. ("Protocol error: too many arguments")
 1.1.14.1 08-Mar-2013  yamt file vchiq_2835.h was added on branch yamt-pagecache on 2014-05-22 11:40:59 +0000
 1.1.6.2 23-Jun-2013  tls resync from head
 1.1.6.1 08-Mar-2013  tls file vchiq_2835.h was added on branch tls-maxphys on 2013-06-23 06:20:23 +0000
 1.24 18-Sep-2025  mrg make function definition match prototype (int -> VCHIQ_STATUS_T).
 1.23 03-Nov-2020  skrll Fix build on aa64
 1.22 26-Sep-2020  skrll branches: 1.22.2;
Define isb(), dsb(option), and dmb(option)

Catch up with vchiq upstream to allow this.
 1.21 22-Jan-2020  mlelstv align with upstream for 64bit compatibility.
 1.20 10-Dec-2017  skrll branches: 1.20.4; 1.20.10;
FDTise RapberryPI support. Thanks for jmcneill for a lot of help with this.

The kernel image that the RPI firmware boots is now netbsd.img in the
kernel build directory.

XXX fdtbus_get_reg needs reworking
 1.19 01-Jun-2017  chs remove checks for failure after memory allocation calls that cannot fail:

kmem_alloc() with KM_SLEEP
kmem_zalloc() with KM_SLEEP
percpu_alloc()
pserialize_create()
psref_class_create()

all of these paths include an assertion that the allocation has not failed,
so callers should not assert that again.
 1.18 12-Jan-2017  skrll Sync with latest github/raspberrypi/linux sources

XXX should provide a vchiq2netbsd and cvs import
 1.17 01-May-2014  joerg branches: 1.17.2; 1.17.6; 1.17.10;
First argument of vchiq_log_info is the log level, not a boolean.
 1.16 19-Apr-2014  skrll Deal in 4KB pages for vchiq regardless of ARM page size.
 1.15 19-Apr-2014  skrll Wrap a long line.
 1.14 19-Apr-2014  skrll Comment KNF
 1.13 12-Apr-2014  skrll Remove buggy linux completion API emulation and use the common version.
 1.12 27-Mar-2014  skrll branches: 1.12.2;
More #if 0'ed removal
 1.11 27-Mar-2014  skrll Remove #if 0'ed code.
 1.10 26-Mar-2014  skrll Correct some bus_dma operations.
 1.9 28-Apr-2013  skrll branches: 1.9.4; 1.9.6;
G/C M_VCPAGELIST
 1.8 26-Apr-2013  skrll Actually handle any fragments in vchiq_complete_bulk
 1.7 25-Apr-2013  skrll Style nit.
 1.6 25-Apr-2013  skrll Trailing whitespace
 1.5 25-Mar-2013  skrll Remove vchiq_doorbell_irq. We have our own version in vchiq_intr.
 1.4 25-Mar-2013  skrll Wrap a long line
 1.3 25-Mar-2013  skrll Remove a bogus KASSERT and improve a comment while I'm nearby.
 1.2 25-Mar-2013  skrll Revert commented out create_pagelist/free_pagelist to the original
version and not the broken FreeBSD version. Should really be deleted
someday soon.
 1.1 08-Mar-2013  jmcneill BCM2835 VCHIQ device driver
 1.9.6.1 18-May-2014  rmind sync with head
 1.9.4.4 03-Dec-2017  jdolecek update from HEAD
 1.9.4.3 20-Aug-2014  tls Rebase to HEAD as of a few days ago.
 1.9.4.2 23-Jun-2013  tls resync from head
 1.9.4.1 28-Apr-2013  tls file vchiq_2835_arm.c was added on branch tls-maxphys on 2013-06-23 06:20:23 +0000
 1.12.2.1 10-Aug-2014  tls Rebase.
 1.17.10.1 20-Mar-2017  pgoyette Sync with HEAD
 1.17.6.2 28-Aug-2017  skrll Sync with HEAD
 1.17.6.1 05-Feb-2017  skrll Sync with HEAD
 1.17.2.2 22-May-2014  yamt sync with head.

for a reference, the tree before this commit was tagged
as yamt-pagecache-tag8.

this commit was splitted into small chunks to avoid
a limitation of cvs. ("Protocol error: too many arguments")
 1.17.2.1 01-May-2014  yamt file vchiq_2835_arm.c was added on branch yamt-pagecache on 2014-05-22 11:40:59 +0000
 1.20.10.1 25-Jan-2020  ad Sync with head.
 1.20.4.1 08-Apr-2020  martin Merge changes from current as of 20200406
 1.22.2.1 14-Dec-2020  thorpej Sync w/ HEAD.
 1.21 22-Jan-2020  mlelstv align with upstream for 64bit compatibility.
 1.20 07-Aug-2018  gson branches: 1.20.6;
One newline is enough.
 1.19 30-Nov-2017  christos branches: 1.19.2; 1.19.4;
add fo_name so we can identify the fileops in a simple way.
 1.18 12-Jan-2017  skrll Sync with latest github/raspberrypi/linux sources

XXX should provide a vchiq2netbsd and cvs import
 1.17 08-Jan-2017  christos xxx: gcc avoid bogus ssp warning
 1.16 28-Jan-2015  skrll branches: 1.16.2;
It turns out we needed to track pid all along, so revert the lwp tracking
I did ages ago.

quake has a chance of working now.
 1.15 23-Jan-2015  skrll More count vs ret confusion. Need to send notification if count != 0.
 1.14 20-Dec-2014  nat Enable state/stats information on vchiq device read.

This commit was approved by skrll@
 1.13 25-Jul-2014  dholland branches: 1.13.2; 1.13.4;
Add d_discard to all struct cdevsw instances I could find.

All have been set to "nodiscard"; some should get a real implementation.
 1.12 17-Apr-2014  skrll branches: 1.12.2;
Fix count vs ret confusion. ret is only set on error when count == 0 -
make sure this is the case.
 1.11 27-Mar-2014  skrll branches: 1.11.2;
Merge upstream fixes.
 1.10 25-Mar-2014  christos kill sprintf
 1.9 16-Mar-2014  dholland Change (mostly mechanically) every cdevsw/bdevsw I can find to use
designated initializers.

I have not built every extant kernel so I have probably broken at
least one build; however I've also found and fixed some wrong
cdevsw/bdevsw entries so even if so I think we come out ahead.
 1.8 14-Dec-2013  skrll Remove unused variables.
 1.7 13-Oct-2013  skrll Print the client_id (lwp address) as hex and avoid stack overflow. Use
snprintf while here.

Fixes PR/48287
 1.6 19-Sep-2013  skrll Track waiters/clients via lwp pointer and not pid.
 1.5 19-Sep-2013  skrll Call {lmutex,_sema)_destroy appropriately
 1.4 03-Aug-2013  skrll Whitespace.
 1.3 28-Apr-2013  skrll branches: 1.3.4; 1.3.6;
Spello
 1.2 25-Mar-2013  jmcneill hide some debug printfs under VCHIQ_IOCTL_DEBUG
 1.1 08-Mar-2013  jmcneill BCM2835 VCHIQ device driver
 1.3.6.2 18-May-2014  rmind sync with head
 1.3.6.1 28-Aug-2013  rmind sync with head
 1.3.4.4 03-Dec-2017  jdolecek update from HEAD
 1.3.4.3 20-Aug-2014  tls Rebase to HEAD as of a few days ago.
 1.3.4.2 23-Jun-2013  tls resync from head
 1.3.4.1 28-Apr-2013  tls file vchiq_arm.c was added on branch tls-maxphys on 2013-06-23 06:20:23 +0000
 1.11.2.1 10-Aug-2014  tls Rebase.
 1.12.2.2 22-May-2014  yamt sync with head.

for a reference, the tree before this commit was tagged
as yamt-pagecache-tag8.

this commit was splitted into small chunks to avoid
a limitation of cvs. ("Protocol error: too many arguments")
 1.12.2.1 17-Apr-2014  yamt file vchiq_arm.c was added on branch yamt-pagecache on 2014-05-22 11:40:59 +0000
 1.13.4.2 05-Feb-2017  skrll Sync with HEAD
 1.13.4.1 06-Apr-2015  skrll Sync with HEAD
 1.13.2.3 28-Jan-2015  martin Pull up following revision(s) (requested by skrll in ticket #464):
sys/external/bsd/vchiq/dist/interface/vchiq_arm/vchiq_kern_lib.c: revision 1.6
sys/external/bsd/vchiq/dist/interface/vchiq_arm/vchiq_arm.c: revision 1.16
It turns out we needed to track pid all along, so revert the lwp tracking
I did ages ago.
quake has a chance of working now.
 1.13.2.2 23-Jan-2015  martin Pull up following revision(s) (requested by skrll in ticket #446):
sys/external/bsd/vchiq/dist/interface/vchiq_arm/vchiq_arm.c: revision 1.15
More count vs ret confusion. Need to send notification if count != 0.
 1.13.2.1 29-Dec-2014  martin Pull up following revision(s) (requested by nat in ticket #345):
sys/external/bsd/vchiq/dist/interface/vchiq_arm/vchiq_arm.c: revision 1.14
sys/external/bsd/vchiq/dist/interface/vchiq_arm/vchiq_core.c: revision 1.10
Enable state/stats information on vchiq device read.
Allow more space for temp string buffer in service stats display.
Fixes corrupted display when rx and tx count become large.
 1.16.2.1 20-Mar-2017  pgoyette Sync with HEAD
 1.19.4.2 08-Apr-2020  martin Merge changes from current as of 20200406
 1.19.4.1 10-Jun-2019  christos Sync with HEAD
 1.19.2.1 06-Sep-2018  pgoyette Sync with HEAD

Resolve a couple of conflicts (result of the uimin/uimax changes)
 1.20.6.1 25-Jan-2020  ad Sync with head.
 1.2 12-Jan-2017  skrll Sync with latest github/raspberrypi/linux sources

XXX should provide a vchiq2netbsd and cvs import
 1.1 08-Mar-2013  jmcneill branches: 1.1.6; 1.1.14; 1.1.18; 1.1.22;
BCM2835 VCHIQ device driver
 1.1.22.1 20-Mar-2017  pgoyette Sync with HEAD
 1.1.18.1 05-Feb-2017  skrll Sync with HEAD
 1.1.14.2 22-May-2014  yamt sync with head.

for a reference, the tree before this commit was tagged
as yamt-pagecache-tag8.

this commit was splitted into small chunks to avoid
a limitation of cvs. ("Protocol error: too many arguments")
 1.1.14.1 08-Mar-2013  yamt file vchiq_arm.h was added on branch yamt-pagecache on 2014-05-22 11:40:59 +0000
 1.1.6.3 03-Dec-2017  jdolecek update from HEAD
 1.1.6.2 23-Jun-2013  tls resync from head
 1.1.6.1 08-Mar-2013  tls file vchiq_arm.h was added on branch tls-maxphys on 2013-06-23 06:20:23 +0000
 1.1 08-Mar-2013  jmcneill branches: 1.1.6; 1.1.14;
BCM2835 VCHIQ device driver
 1.1.14.2 22-May-2014  yamt sync with head.

for a reference, the tree before this commit was tagged
as yamt-pagecache-tag8.

this commit was splitted into small chunks to avoid
a limitation of cvs. ("Protocol error: too many arguments")
 1.1.14.1 08-Mar-2013  yamt file vchiq_build_info.h was added on branch yamt-pagecache on 2014-05-22 11:40:59 +0000
 1.1.6.2 23-Jun-2013  tls resync from head
 1.1.6.1 08-Mar-2013  tls file vchiq_build_info.h was added on branch tls-maxphys on 2013-06-23 06:20:23 +0000
 1.2 12-Jan-2017  skrll Sync with latest github/raspberrypi/linux sources

XXX should provide a vchiq2netbsd and cvs import
 1.1 08-Mar-2013  jmcneill branches: 1.1.6; 1.1.14; 1.1.18; 1.1.22;
BCM2835 VCHIQ device driver
 1.1.22.1 20-Mar-2017  pgoyette Sync with HEAD
 1.1.18.1 05-Feb-2017  skrll Sync with HEAD
 1.1.14.2 22-May-2014  yamt sync with head.

for a reference, the tree before this commit was tagged
as yamt-pagecache-tag8.

this commit was splitted into small chunks to avoid
a limitation of cvs. ("Protocol error: too many arguments")
 1.1.14.1 08-Mar-2013  yamt file vchiq_cfg.h was added on branch yamt-pagecache on 2014-05-22 11:40:59 +0000
 1.1.6.3 03-Dec-2017  jdolecek update from HEAD
 1.1.6.2 23-Jun-2013  tls resync from head
 1.1.6.1 08-Mar-2013  tls file vchiq_cfg.h was added on branch tls-maxphys on 2013-06-23 06:20:23 +0000
 1.1 08-Mar-2013  jmcneill branches: 1.1.6; 1.1.14;
BCM2835 VCHIQ device driver
 1.1.14.2 22-May-2014  yamt sync with head.

for a reference, the tree before this commit was tagged
as yamt-pagecache-tag8.

this commit was splitted into small chunks to avoid
a limitation of cvs. ("Protocol error: too many arguments")
 1.1.14.1 08-Mar-2013  yamt file vchiq_connected.c was added on branch yamt-pagecache on 2014-05-22 11:40:59 +0000
 1.1.6.2 23-Jun-2013  tls resync from head
 1.1.6.1 08-Mar-2013  tls file vchiq_connected.c was added on branch tls-maxphys on 2013-06-23 06:20:23 +0000
 1.2 12-Jan-2017  skrll Sync with latest github/raspberrypi/linux sources

XXX should provide a vchiq2netbsd and cvs import
 1.1 08-Mar-2013  jmcneill branches: 1.1.6; 1.1.14; 1.1.18; 1.1.22;
BCM2835 VCHIQ device driver
 1.1.22.1 20-Mar-2017  pgoyette Sync with HEAD
 1.1.18.1 05-Feb-2017  skrll Sync with HEAD
 1.1.14.2 22-May-2014  yamt sync with head.

for a reference, the tree before this commit was tagged
as yamt-pagecache-tag8.

this commit was splitted into small chunks to avoid
a limitation of cvs. ("Protocol error: too many arguments")
 1.1.14.1 08-Mar-2013  yamt file vchiq_connected.h was added on branch yamt-pagecache on 2014-05-22 11:40:59 +0000
 1.1.6.3 03-Dec-2017  jdolecek update from HEAD
 1.1.6.2 23-Jun-2013  tls resync from head
 1.1.6.1 08-Mar-2013  tls file vchiq_connected.h was added on branch tls-maxphys on 2013-06-23 06:20:23 +0000
 1.15 26-Sep-2020  skrll Define isb(), dsb(option), and dmb(option)

Catch up with vchiq upstream to allow this.
 1.14 22-Jan-2020  mlelstv align with upstream for 64bit compatibility.
 1.13 09-Aug-2018  gson branches: 1.13.6;
One newline is enough.
 1.12 05-Feb-2017  skrll branches: 1.12.12; 1.12.14;
Don't call _sema_init twice on various objects... remote_event_create
will initialise them

Found by LOCKDEBUG
 1.11 12-Jan-2017  skrll branches: 1.11.2;
Sync with latest github/raspberrypi/linux sources

XXX should provide a vchiq2netbsd and cvs import
 1.10 20-Dec-2014  nat branches: 1.10.2;
Allow more space for temp string buffer in service stats display.
Fixes corrupted display when rx and tx count become large.
 1.9 27-Mar-2014  skrll branches: 1.9.4; 1.9.6; 1.9.8;
Merge upstream fixes.
 1.8 14-Dec-2013  skrll Comment out unsed variable. Left for reference.
 1.7 01-Dec-2013  joerg remote_event_destroy is unused, mark it so.
 1.6 13-Oct-2013  skrll Print the client_id (lwp address) as hex and avoid stack overflow. Use
snprintf while here.

Fixes PR/48287
 1.5 20-Sep-2013  skrll Clean up semaphore initialisation.
 1.4 19-Sep-2013  skrll Call {lmutex,_sema)_destroy appropriately
 1.3 25-Mar-2013  jmcneill branches: 1.3.4; 1.3.6;
remove unnecessary newline and function name from log message that reports vchiq local and remote versions
 1.2 24-Mar-2013  jmcneill print the local and remote vchiq versions
 1.1 08-Mar-2013  jmcneill BCM2835 VCHIQ device driver
 1.3.6.1 18-May-2014  rmind sync with head
 1.3.4.4 03-Dec-2017  jdolecek update from HEAD
 1.3.4.3 20-Aug-2014  tls Rebase to HEAD as of a few days ago.
 1.3.4.2 23-Jun-2013  tls resync from head
 1.3.4.1 25-Mar-2013  tls file vchiq_core.c was added on branch tls-maxphys on 2013-06-23 06:20:23 +0000
 1.9.8.3 05-Feb-2017  skrll Sync with HEAD
 1.9.8.2 05-Feb-2017  skrll Sync with HEAD
 1.9.8.1 06-Apr-2015  skrll Sync with HEAD
 1.9.6.1 29-Dec-2014  martin Pull up following revision(s) (requested by nat in ticket #345):
sys/external/bsd/vchiq/dist/interface/vchiq_arm/vchiq_arm.c: revision 1.14
sys/external/bsd/vchiq/dist/interface/vchiq_arm/vchiq_core.c: revision 1.10
Enable state/stats information on vchiq device read.
Allow more space for temp string buffer in service stats display.
Fixes corrupted display when rx and tx count become large.
 1.9.4.2 22-May-2014  yamt sync with head.

for a reference, the tree before this commit was tagged
as yamt-pagecache-tag8.

this commit was splitted into small chunks to avoid
a limitation of cvs. ("Protocol error: too many arguments")
 1.9.4.1 27-Mar-2014  yamt file vchiq_core.c was added on branch yamt-pagecache on 2014-05-22 11:40:59 +0000
 1.10.2.1 20-Mar-2017  pgoyette Sync with HEAD
 1.11.2.1 21-Apr-2017  bouyer Sync with HEAD
 1.12.14.2 08-Apr-2020  martin Merge changes from current as of 20200406
 1.12.14.1 10-Jun-2019  christos Sync with HEAD
 1.12.12.1 06-Sep-2018  pgoyette Sync with HEAD

Resolve a couple of conflicts (result of the uimin/uimax changes)
 1.13.6.1 25-Jan-2020  ad Sync with head.
 1.8 03-Nov-2020  mlelstv state struct should use fixed size types. NFCI.
 1.7 03-Nov-2020  skrll Fix build on aa64
 1.6 26-Sep-2020  skrll branches: 1.6.2;
Define isb(), dsb(option), and dmb(option)

Catch up with vchiq upstream to allow this.
 1.5 22-Jan-2020  mlelstv align with upstream for 64bit compatibility.
 1.4 12-Jan-2017  skrll branches: 1.4.16; 1.4.22;
Sync with latest github/raspberrypi/linux sources

XXX should provide a vchiq2netbsd and cvs import
 1.3 27-Mar-2014  skrll branches: 1.3.4; 1.3.8; 1.3.12;
Merge upstream fixes.
 1.2 19-Sep-2013  skrll Use the common list.h
 1.1 08-Mar-2013  jmcneill branches: 1.1.6; 1.1.8;
BCM2835 VCHIQ device driver
 1.1.8.1 18-May-2014  rmind sync with head
 1.1.6.4 03-Dec-2017  jdolecek update from HEAD
 1.1.6.3 20-Aug-2014  tls Rebase to HEAD as of a few days ago.
 1.1.6.2 23-Jun-2013  tls resync from head
 1.1.6.1 08-Mar-2013  tls file vchiq_core.h was added on branch tls-maxphys on 2013-06-23 06:20:23 +0000
 1.3.12.1 20-Mar-2017  pgoyette Sync with HEAD
 1.3.8.1 05-Feb-2017  skrll Sync with HEAD
 1.3.4.2 22-May-2014  yamt sync with head.

for a reference, the tree before this commit was tagged
as yamt-pagecache-tag8.

this commit was splitted into small chunks to avoid
a limitation of cvs. ("Protocol error: too many arguments")
 1.3.4.1 27-Mar-2014  yamt file vchiq_core.h was added on branch yamt-pagecache on 2014-05-22 11:40:59 +0000
 1.4.22.1 25-Jan-2020  ad Sync with head.
 1.4.16.1 08-Apr-2020  martin Merge changes from current as of 20200406
 1.6.2.1 14-Dec-2020  thorpej Sync w/ HEAD.
 1.1 12-Jan-2017  skrll branches: 1.1.4; 1.1.6; 1.1.18;
Sync with latest github/raspberrypi/linux sources

XXX should provide a vchiq2netbsd and cvs import
 1.1.18.2 03-Dec-2017  jdolecek update from HEAD
 1.1.18.1 12-Jan-2017  jdolecek file vchiq_debugfs.h was added on branch tls-maxphys on 2017-12-03 11:38:04 +0000
 1.1.6.2 20-Mar-2017  pgoyette Sync with HEAD
 1.1.6.1 12-Jan-2017  pgoyette file vchiq_debugfs.h was added on branch pgoyette-localcount on 2017-03-20 06:57:46 +0000
 1.1.4.2 05-Feb-2017  skrll Sync with HEAD
 1.1.4.1 12-Jan-2017  skrll file vchiq_debugfs.h was added on branch nick-nhusb on 2017-02-05 13:40:54 +0000
 1.2 12-Jan-2017  skrll Sync with latest github/raspberrypi/linux sources

XXX should provide a vchiq2netbsd and cvs import
 1.1 08-Mar-2013  jmcneill branches: 1.1.6; 1.1.14; 1.1.18; 1.1.22;
BCM2835 VCHIQ device driver
 1.1.22.1 20-Mar-2017  pgoyette Sync with HEAD
 1.1.18.1 05-Feb-2017  skrll Sync with HEAD
 1.1.14.2 22-May-2014  yamt sync with head.

for a reference, the tree before this commit was tagged
as yamt-pagecache-tag8.

this commit was splitted into small chunks to avoid
a limitation of cvs. ("Protocol error: too many arguments")
 1.1.14.1 08-Mar-2013  yamt file vchiq_genversion was added on branch yamt-pagecache on 2014-05-22 11:40:59 +0000
 1.1.6.3 03-Dec-2017  jdolecek update from HEAD
 1.1.6.2 23-Jun-2013  tls resync from head
 1.1.6.1 08-Mar-2013  tls file vchiq_genversion was added on branch tls-maxphys on 2013-06-23 06:20:23 +0000
 1.3 12-Jan-2017  skrll Sync with latest github/raspberrypi/linux sources

XXX should provide a vchiq2netbsd and cvs import
 1.2 27-Mar-2014  skrll branches: 1.2.4; 1.2.8; 1.2.12;
Merge upstream fixes.
 1.1 08-Mar-2013  jmcneill branches: 1.1.6; 1.1.8;
BCM2835 VCHIQ device driver
 1.1.8.1 18-May-2014  rmind sync with head
 1.1.6.4 03-Dec-2017  jdolecek update from HEAD
 1.1.6.3 20-Aug-2014  tls Rebase to HEAD as of a few days ago.
 1.1.6.2 23-Jun-2013  tls resync from head
 1.1.6.1 08-Mar-2013  tls file vchiq_if.h was added on branch tls-maxphys on 2013-06-23 06:20:23 +0000
 1.2.12.1 20-Mar-2017  pgoyette Sync with HEAD
 1.2.8.1 05-Feb-2017  skrll Sync with HEAD
 1.2.4.2 22-May-2014  yamt sync with head.

for a reference, the tree before this commit was tagged
as yamt-pagecache-tag8.

this commit was splitted into small chunks to avoid
a limitation of cvs. ("Protocol error: too many arguments")
 1.2.4.1 27-Mar-2014  yamt file vchiq_if.h was added on branch yamt-pagecache on 2014-05-22 11:40:59 +0000
 1.3 12-Jan-2017  skrll Sync with latest github/raspberrypi/linux sources

XXX should provide a vchiq2netbsd and cvs import
 1.2 27-Mar-2014  skrll branches: 1.2.4; 1.2.8; 1.2.12;
Merge upstream fixes.
 1.1 08-Mar-2013  jmcneill branches: 1.1.6; 1.1.8;
BCM2835 VCHIQ device driver
 1.1.8.1 18-May-2014  rmind sync with head
 1.1.6.4 03-Dec-2017  jdolecek update from HEAD
 1.1.6.3 20-Aug-2014  tls Rebase to HEAD as of a few days ago.
 1.1.6.2 23-Jun-2013  tls resync from head
 1.1.6.1 08-Mar-2013  tls file vchiq_ioctl.h was added on branch tls-maxphys on 2013-06-23 06:20:23 +0000
 1.2.12.1 20-Mar-2017  pgoyette Sync with HEAD
 1.2.8.1 05-Feb-2017  skrll Sync with HEAD
 1.2.4.2 22-May-2014  yamt sync with head.

for a reference, the tree before this commit was tagged
as yamt-pagecache-tag8.

this commit was splitted into small chunks to avoid
a limitation of cvs. ("Protocol error: too many arguments")
 1.2.4.1 27-Mar-2014  yamt file vchiq_ioctl.h was added on branch yamt-pagecache on 2014-05-22 11:40:59 +0000
 1.8 22-Jan-2020  mlelstv align with upstream for 64bit compatibility.
 1.7 07-Aug-2018  gson branches: 1.7.6;
One newline is enough.
 1.6 28-Jan-2015  skrll branches: 1.6.16; 1.6.18;
It turns out we needed to track pid all along, so revert the lwp tracking
I did ages ago.

quake has a chance of working now.
 1.5 16-Jul-2014  jmcneill branches: 1.5.2; 1.5.4;
From https://github.com/raspberrypi/linux/commit/517d5c1c9ceb7bf94c4e56e4fb97758e13f24b3b

> Fix for ALSA driver crash
> Avoids an issue when closing and opening vchiq where a message can arrive before service handle has been written
 1.4 27-Mar-2014  skrll branches: 1.4.2; 1.4.4;
Merge upstream fixes.
 1.3 19-Sep-2013  skrll Track waiters/clients via lwp pointer and not pid.
 1.2 19-Sep-2013  skrll Call {lmutex,_sema)_destroy appropriately
 1.1 08-Mar-2013  jmcneill branches: 1.1.6; 1.1.8;
BCM2835 VCHIQ device driver
 1.1.8.1 18-May-2014  rmind sync with head
 1.1.6.4 03-Dec-2017  jdolecek update from HEAD
 1.1.6.3 20-Aug-2014  tls Rebase to HEAD as of a few days ago.
 1.1.6.2 23-Jun-2013  tls resync from head
 1.1.6.1 08-Mar-2013  tls file vchiq_kern_lib.c was added on branch tls-maxphys on 2013-06-23 06:20:23 +0000
 1.4.4.2 22-May-2014  yamt sync with head.

for a reference, the tree before this commit was tagged
as yamt-pagecache-tag8.

this commit was splitted into small chunks to avoid
a limitation of cvs. ("Protocol error: too many arguments")
 1.4.4.1 27-Mar-2014  yamt file vchiq_kern_lib.c was added on branch yamt-pagecache on 2014-05-22 11:40:59 +0000
 1.4.2.1 10-Aug-2014  tls Rebase.
 1.5.4.1 06-Apr-2015  skrll Sync with HEAD
 1.5.2.1 28-Jan-2015  martin Pull up following revision(s) (requested by skrll in ticket #464):
sys/external/bsd/vchiq/dist/interface/vchiq_arm/vchiq_kern_lib.c: revision 1.6
sys/external/bsd/vchiq/dist/interface/vchiq_arm/vchiq_arm.c: revision 1.16
It turns out we needed to track pid all along, so revert the lwp tracking
I did ages ago.
quake has a chance of working now.
 1.6.18.2 08-Apr-2020  martin Merge changes from current as of 20200406
 1.6.18.1 10-Jun-2019  christos Sync with HEAD
 1.6.16.1 06-Sep-2018  pgoyette Sync with HEAD

Resolve a couple of conflicts (result of the uimin/uimax changes)
 1.7.6.1 25-Jan-2020  ad Sync with head.
 1.2 03-Apr-2013  skrll Remove unnecessary freebsd code.
 1.1 08-Mar-2013  jmcneill BCM2835 VCHIQ device driver
 1.14 07-Nov-2024  rin vchiq: Use SYSCTL_DESCR() to comply with SYSCTL_INCLUDE_DESCR option
 1.13 07-Nov-2024  rin vchiq: Adjust newlines in arguments of sysctl_createv(9)

No binary changes.
 1.12 26-Sep-2020  skrll branches: 1.12.26;
Define isb(), dsb(option), and dmb(option)

Catch up with vchiq upstream to allow this.
 1.11 31-Dec-2019  jmcneill Split vchiq into separate fdt and acpi attachments.
 1.10 10-Dec-2017  skrll branches: 1.10.4;
FDTise RapberryPI support. Thanks for jmcneill for a lot of help with this.

The kernel image that the RPI firmware boots is now netbsd.img in the
kernel build directory.

XXX fdtbus_get_reg needs reworking
 1.9 05-Nov-2017  skrll Use IPL_VM and IST_MPSAFE instead of IPL_SCHED
 1.8 21-Sep-2017  skrll Spaces to TAB
 1.7 12-Jan-2017  skrll Use some macros for magic numbers and correct return value.
 1.6 15-Jan-2016  mlelstv branches: 1.6.2;
add sysctl nodes to configure vchiq log levels.
 1.5 29-Jul-2015  skrll When expanding an inline function make sure you get the argument order
correct!

Now there's no functional change to expanding bcm2835_intr_establish
 1.4 29-Jul-2015  skrll Expand the bcm2835_intr_establish inline.

No functional change.
 1.3 02-Sep-2014  jmcneill branches: 1.3.2;
IPL_VM -> IPL_SCHED, and callout_stop -> callout_halt
 1.2 25-Mar-2013  jmcneill branches: 1.2.4; 1.2.12;
defer vchiq initialization with config_mountroot, works around a timing issue that caused problems during sdhc init on some boards
 1.1 08-Mar-2013  jmcneill BCM2835 VCHIQ device driver
 1.2.12.2 22-May-2014  yamt sync with head.

for a reference, the tree before this commit was tagged
as yamt-pagecache-tag8.

this commit was splitted into small chunks to avoid
a limitation of cvs. ("Protocol error: too many arguments")
 1.2.12.1 25-Mar-2013  yamt file vchiq_kmod_netbsd.c was added on branch yamt-pagecache on 2014-05-22 11:40:59 +0000
 1.2.4.3 03-Dec-2017  jdolecek update from HEAD
 1.2.4.2 23-Jun-2013  tls resync from head
 1.2.4.1 25-Mar-2013  tls file vchiq_kmod_netbsd.c was added on branch tls-maxphys on 2013-06-23 06:20:23 +0000
 1.3.2.3 05-Feb-2017  skrll Sync with HEAD
 1.3.2.2 19-Mar-2016  skrll Sync with HEAD
 1.3.2.1 22-Sep-2015  skrll Sync with HEAD
 1.6.2.1 20-Mar-2017  pgoyette Sync with HEAD
 1.10.4.1 08-Apr-2020  martin Merge changes from current as of 20200406
 1.12.26.1 02-Aug-2025  perseant Sync with HEAD
 1.1 08-Mar-2013  jmcneill branches: 1.1.6; 1.1.14;
BCM2835 VCHIQ device driver
 1.1.14.2 22-May-2014  yamt sync with head.

for a reference, the tree before this commit was tagged
as yamt-pagecache-tag8.

this commit was splitted into small chunks to avoid
a limitation of cvs. ("Protocol error: too many arguments")
 1.1.14.1 08-Mar-2013  yamt file vchiq_memdrv.h was added on branch yamt-pagecache on 2014-05-22 11:40:59 +0000
 1.1.6.2 23-Jun-2013  tls resync from head
 1.1.6.1 08-Mar-2013  tls file vchiq_memdrv.h was added on branch tls-maxphys on 2013-06-23 06:20:23 +0000
 1.3 31-Dec-2019  jmcneill Split vchiq into separate fdt and acpi attachments.
 1.2 10-Dec-2017  skrll branches: 1.2.4;
FDTise RapberryPI support. Thanks for jmcneill for a lot of help with this.

The kernel image that the RPI firmware boots is now netbsd.img in the
kernel build directory.

XXX fdtbus_get_reg needs reworking
 1.1 08-Mar-2013  jmcneill branches: 1.1.6; 1.1.14;
BCM2835 VCHIQ device driver
 1.1.14.2 22-May-2014  yamt sync with head.

for a reference, the tree before this commit was tagged
as yamt-pagecache-tag8.

this commit was splitted into small chunks to avoid
a limitation of cvs. ("Protocol error: too many arguments")
 1.1.14.1 08-Mar-2013  yamt file vchiq_netbsd.h was added on branch yamt-pagecache on 2014-05-22 11:40:59 +0000
 1.1.6.2 23-Jun-2013  tls resync from head
 1.1.6.1 08-Mar-2013  tls file vchiq_netbsd.h was added on branch tls-maxphys on 2013-06-23 06:20:23 +0000
 1.2.4.1 08-Apr-2020  martin Merge changes from current as of 20200406
 1.5 07-Aug-2021  thorpej Merge thorpej-cfargs2.
 1.4 24-Apr-2021  thorpej branches: 1.4.8;
Merge thorpej-cfargs branch:

Simplify and make extensible the config_search() / config_found() /
config_attach() interfaces: rather than having different variants for
which arguments you want pass along, just have a single call that
takes a variadic list of tag-value arguments.

Adjust all call sites:
- Simplify wherever possible; don't pass along arguments that aren't
actually needed.
- Don't be explicit about what interface attribute is attaching if
the device only has one. (More simplification.)
- Add a config_probe() function to be used in indirect configuiration
situations, making is visibly easier to see when indirect config is
in play, and allowing for future change in semantics. (As of now,
this is just a wrapper around config_match(), but that is an
implementation detail.)

Remove unnecessary or redundant interface attributes where they're not
needed.

There are currently 5 "cfargs" defined:
- CFARG_SUBMATCH (submatch function for direct config)
- CFARG_SEARCH (search function for indirect config)
- CFARG_IATTR (interface attribte)
- CFARG_LOCATORS (locators array)
- CFARG_DEVHANDLE (devhandle_t - wraps OFW, ACPI, etc. handles)

...and a sentinel value CFARG_EOL.

Add some extra sanity checking to ensure that interface attributes
aren't ambiguous.

Use CFARG_DEVHANDLE in MI FDT, OFW, and ACPI code, and macppc and shark
ports to associate those device handles with device_t instance. This
will trickle trough to more places over time (need back-end for pre-OFW
Sun OBP; any others?).
 1.3 01-Dec-2020  rin branches: 1.3.2;
Do not attach vchiq(4) in big-endian mode.

For big-endian mode, all data written to and read from DMA buffer must be
byte-swapped. This requires heavy modifications to third party codes.

Also, we will switch to vc4 drm driver, hopefully soon.
 1.2 22-Feb-2020  jmcneill branches: 1.2.4; 1.2.8;
build fix
 1.1 31-Dec-2019  jmcneill branches: 1.1.2;
Split vchiq into separate fdt and acpi attachments.
 1.1.2.1 29-Feb-2020  ad Sync with head.
 1.2.8.1 14-Dec-2020  thorpej Sync w/ HEAD.
 1.2.4.2 08-Apr-2020  martin Merge changes from current as of 20200406
 1.2.4.1 22-Feb-2020  martin file vchiq_netbsd_acpi.c was added on branch phil-wifi on 2020-04-08 14:08:29 +0000
 1.3.2.1 23-Mar-2021  thorpej Convert config_found_ia() call sites where the device only carries
a single interface attribute to bare config_found() calls.
 1.4.8.1 05-Aug-2021  thorpej Adapt to CFARGS().
 1.7 07-Aug-2021  thorpej Merge thorpej-cfargs2.
 1.6 24-Apr-2021  thorpej branches: 1.6.8;
Merge thorpej-cfargs branch:

Simplify and make extensible the config_search() / config_found() /
config_attach() interfaces: rather than having different variants for
which arguments you want pass along, just have a single call that
takes a variadic list of tag-value arguments.

Adjust all call sites:
- Simplify wherever possible; don't pass along arguments that aren't
actually needed.
- Don't be explicit about what interface attribute is attaching if
the device only has one. (More simplification.)
- Add a config_probe() function to be used in indirect configuiration
situations, making is visibly easier to see when indirect config is
in play, and allowing for future change in semantics. (As of now,
this is just a wrapper around config_match(), but that is an
implementation detail.)

Remove unnecessary or redundant interface attributes where they're not
needed.

There are currently 5 "cfargs" defined:
- CFARG_SUBMATCH (submatch function for direct config)
- CFARG_SEARCH (search function for indirect config)
- CFARG_IATTR (interface attribte)
- CFARG_LOCATORS (locators array)
- CFARG_DEVHANDLE (devhandle_t - wraps OFW, ACPI, etc. handles)

...and a sentinel value CFARG_EOL.

Add some extra sanity checking to ensure that interface attributes
aren't ambiguous.

Use CFARG_DEVHANDLE in MI FDT, OFW, and ACPI code, and macppc and shark
ports to associate those device handles with device_t instance. This
will trickle trough to more places over time (need back-end for pre-OFW
Sun OBP; any others?).
 1.5 27-Jan-2021  thorpej branches: 1.5.2;
Rename of_match_compat_data() to of_compatible_match(). Similarly,
rename of_search_compatible() to of_compatible_lookup().

Standardize on of_compatible_match() for driver matching, and adapt
all call sites.
 1.4 15-Jan-2021  jmcneill use fdtbus_intr_establish_xname
 1.3 01-Dec-2020  rin Do not attach vchiq(4) in big-endian mode.

For big-endian mode, all data written to and read from DMA buffer must be
byte-swapped. This requires heavy modifications to third party codes.

Also, we will switch to vc4 drm driver, hopefully soon.
 1.2 01-Dec-2020  rin Fix style of error message.
 1.1 31-Dec-2019  jmcneill branches: 1.1.6; 1.1.10;
Split vchiq into separate fdt and acpi attachments.
 1.1.10.2 03-Apr-2021  thorpej Sync with HEAD.
 1.1.10.1 14-Dec-2020  thorpej Sync w/ HEAD.
 1.1.6.2 08-Apr-2020  martin Merge changes from current as of 20200406
 1.1.6.1 31-Dec-2019  martin file vchiq_netbsd_fdt.c was added on branch phil-wifi on 2020-04-08 14:08:29 +0000
 1.5.2.1 23-Mar-2021  thorpej Convert config_found_ia() call sites where the device only carries
a single interface attribute to bare config_found() calls.
 1.6.8.1 05-Aug-2021  thorpej Adapt to CFARGS().
 1.1 08-Mar-2013  jmcneill branches: 1.1.6; 1.1.14;
BCM2835 VCHIQ device driver
 1.1.14.2 22-May-2014  yamt sync with head.

for a reference, the tree before this commit was tagged
as yamt-pagecache-tag8.

this commit was splitted into small chunks to avoid
a limitation of cvs. ("Protocol error: too many arguments")
 1.1.14.1 08-Mar-2013  yamt file vchiq_pagelist.h was added on branch yamt-pagecache on 2014-05-22 11:40:59 +0000
 1.1.6.2 23-Jun-2013  tls resync from head
 1.1.6.1 08-Mar-2013  tls file vchiq_pagelist.h was added on branch tls-maxphys on 2013-06-23 06:20:23 +0000
 1.3 12-Jan-2017  skrll Sync with latest github/raspberrypi/linux sources

XXX should provide a vchiq2netbsd and cvs import
 1.2 25-Mar-2014  christos branches: 1.2.4; 1.2.8; 1.2.12;
kill sprintf
 1.1 08-Mar-2013  jmcneill branches: 1.1.6; 1.1.8;
BCM2835 VCHIQ device driver
 1.1.8.1 18-May-2014  rmind sync with head
 1.1.6.4 03-Dec-2017  jdolecek update from HEAD
 1.1.6.3 20-Aug-2014  tls Rebase to HEAD as of a few days ago.
 1.1.6.2 23-Jun-2013  tls resync from head
 1.1.6.1 08-Mar-2013  tls file vchiq_proc.c was added on branch tls-maxphys on 2013-06-23 06:20:23 +0000
 1.2.12.1 20-Mar-2017  pgoyette Sync with HEAD
 1.2.8.1 05-Feb-2017  skrll Sync with HEAD
 1.2.4.2 22-May-2014  yamt sync with head.

for a reference, the tree before this commit was tagged
as yamt-pagecache-tag8.

this commit was splitted into small chunks to avoid
a limitation of cvs. ("Protocol error: too many arguments")
 1.2.4.1 25-Mar-2014  yamt file vchiq_proc.c was added on branch yamt-pagecache on 2014-05-22 11:40:59 +0000
 1.7 22-Jan-2020  mlelstv align with upstream for 64bit compatibility.
 1.6 12-Jan-2017  skrll branches: 1.6.16; 1.6.22;
Sync with latest github/raspberrypi/linux sources

XXX should provide a vchiq2netbsd and cvs import
 1.5 02-Sep-2014  jmcneill branches: 1.5.2; 1.5.4;
expose vchi_get_peer_version
 1.4 16-Jul-2014  jmcneill branches: 1.4.2;
From https://github.com/raspberrypi/linux/commit/517d5c1c9ceb7bf94c4e56e4fb97758e13f24b3b

> Fix for ALSA driver crash
> Avoids an issue when closing and opening vchiq where a message can arrive before service handle has been written
 1.3 27-Mar-2014  skrll branches: 1.3.2; 1.3.4;
Merge upstream fixes.
 1.2 06-Aug-2013  skrll Make a comment match the code.
 1.1 08-Mar-2013  jmcneill branches: 1.1.6; 1.1.8;
BCM2835 VCHIQ device driver
 1.1.8.2 18-May-2014  rmind sync with head
 1.1.8.1 28-Aug-2013  rmind sync with head
 1.1.6.4 03-Dec-2017  jdolecek update from HEAD
 1.1.6.3 20-Aug-2014  tls Rebase to HEAD as of a few days ago.
 1.1.6.2 23-Jun-2013  tls resync from head
 1.1.6.1 08-Mar-2013  tls file vchiq_shim.c was added on branch tls-maxphys on 2013-06-23 06:20:23 +0000
 1.3.4.2 22-May-2014  yamt sync with head.

for a reference, the tree before this commit was tagged
as yamt-pagecache-tag8.

this commit was splitted into small chunks to avoid
a limitation of cvs. ("Protocol error: too many arguments")
 1.3.4.1 27-Mar-2014  yamt file vchiq_shim.c was added on branch yamt-pagecache on 2014-05-22 11:40:59 +0000
 1.3.2.1 10-Aug-2014  tls Rebase.
 1.4.2.1 19-Oct-2014  martin Pull up following revision(s) (requested by skrll in ticket #151):
sys/external/bsd/vchiq/dist/interface/vchiq_arm/vchiq_shim.c: revision 1.5
sys/arch/arm/broadcom/bcm2835_vcaudio.c: revision 1.4
sys/arch/arm/broadcom/bcm2835_vcaudio.c: revision 1.5
sys/arch/arm/broadcom/bcm2835_vcaudio.c: revision 1.6
sys/arch/arm/broadcom/bcm2835_vcaudio.c: revision 1.7
use a fixed frequency (48kHz) and configure the audio server at attach time, instead of at the beginning of playback
improved playback error handling, and get rid of junk+silence insertion at the beginning of playback
expose vchi_get_peer_version
capture peer version; if less than 2, bail out as bulk mode is not supported. report the peer version with "audioctl version"
Some improvements that make playback mostly reliable for me - the final
piece of the jigaw is probably in vchiq:
- prefill vchiq with a number (currently 2) blocks of audio before
starting
- use a kthread as workqueue isn't suited to our usage.
- don't drain on stopping as for some reason it leaves data behind.
 1.5.4.1 20-Mar-2017  pgoyette Sync with HEAD
 1.5.2.1 05-Feb-2017  skrll Sync with HEAD
 1.6.22.1 25-Jan-2020  ad Sync with head.
 1.6.16.1 08-Apr-2020  martin Merge changes from current as of 20200406
 1.3 12-Jan-2017  skrll Sync with latest github/raspberrypi/linux sources

XXX should provide a vchiq2netbsd and cvs import
 1.2 27-Mar-2014  skrll branches: 1.2.4; 1.2.8; 1.2.12;
Merge upstream fixes.
 1.1 08-Mar-2013  jmcneill branches: 1.1.6; 1.1.8;
BCM2835 VCHIQ device driver
 1.1.8.1 18-May-2014  rmind sync with head
 1.1.6.4 03-Dec-2017  jdolecek update from HEAD
 1.1.6.3 20-Aug-2014  tls Rebase to HEAD as of a few days ago.
 1.1.6.2 23-Jun-2013  tls resync from head
 1.1.6.1 08-Mar-2013  tls file vchiq_util.c was added on branch tls-maxphys on 2013-06-23 06:20:23 +0000
 1.2.12.1 20-Mar-2017  pgoyette Sync with HEAD
 1.2.8.1 05-Feb-2017  skrll Sync with HEAD
 1.2.4.2 22-May-2014  yamt sync with head.

for a reference, the tree before this commit was tagged
as yamt-pagecache-tag8.

this commit was splitted into small chunks to avoid
a limitation of cvs. ("Protocol error: too many arguments")
 1.2.4.1 27-Mar-2014  yamt file vchiq_util.c was added on branch yamt-pagecache on 2014-05-22 11:40:59 +0000
 1.3 12-Jan-2017  skrll Sync with latest github/raspberrypi/linux sources

XXX should provide a vchiq2netbsd and cvs import
 1.2 19-Sep-2013  skrll branches: 1.2.4; 1.2.8; 1.2.12;
Use the common list.h
 1.1 08-Mar-2013  jmcneill branches: 1.1.6; 1.1.8;
BCM2835 VCHIQ device driver
 1.1.8.1 18-May-2014  rmind sync with head
 1.1.6.4 03-Dec-2017  jdolecek update from HEAD
 1.1.6.3 20-Aug-2014  tls Rebase to HEAD as of a few days ago.
 1.1.6.2 23-Jun-2013  tls resync from head
 1.1.6.1 08-Mar-2013  tls file vchiq_util.h was added on branch tls-maxphys on 2013-06-23 06:20:23 +0000
 1.2.12.1 20-Mar-2017  pgoyette Sync with HEAD
 1.2.8.1 05-Feb-2017  skrll Sync with HEAD
 1.2.4.2 22-May-2014  yamt sync with head.

for a reference, the tree before this commit was tagged
as yamt-pagecache-tag8.

this commit was splitted into small chunks to avoid
a limitation of cvs. ("Protocol error: too many arguments")
 1.2.4.1 19-Sep-2013  yamt file vchiq_util.h was added on branch yamt-pagecache on 2014-05-22 11:40:59 +0000
 1.1 08-Mar-2013  jmcneill branches: 1.1.6; 1.1.14;
BCM2835 VCHIQ device driver
 1.1.14.2 22-May-2014  yamt sync with head.

for a reference, the tree before this commit was tagged
as yamt-pagecache-tag8.

this commit was splitted into small chunks to avoid
a limitation of cvs. ("Protocol error: too many arguments")
 1.1.14.1 08-Mar-2013  yamt file vchiq_version.c was added on branch yamt-pagecache on 2014-05-22 11:40:59 +0000
 1.1.6.2 23-Jun-2013  tls resync from head
 1.1.6.1 08-Mar-2013  tls file vchiq_version.c was added on branch tls-maxphys on 2013-06-23 06:20:23 +0000

RSS XML Feed