Home | History | Annotate | Download | only in atheros
History log of /src/sys/arch/mips/atheros/arbus.c
RevisionDateAuthorComments
 1.17  07-Aug-2021  thorpej Merge thorpej-cfargs2.
 1.16  24-Apr-2021  thorpej branches: 1.16.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.15  10-Jul-2011  matt branches: 1.15.68;
Add athers_get_uart_freq() (since AR7240 uses the ref_clk, not the bus_clk).
Add little endian bus_space_tag for arbus.
Add EHCI attachment for arbus.
 1.14  07-Jul-2011  matt Revamp / rework the Atheros MIPS SoC support. Add initial support for the
AR71xx (MIPS 24K core) SoC and the AR9344 (MIPS 74K core) SoC. Force use
of -mips32 for all Atheros kernels. Make code much more common.
 1.13  01-Jul-2011  dyoung #include <sys/bus.h> instead of <machine/bus.h>.
 1.12  20-Feb-2011  matt Merge forward from matt-nb5-mips64.
 1.11  15-Dec-2010  matt branches: 1.11.2; 1.11.4;
Make these compile again.
 1.10  04-Sep-2006  gdamore branches: 1.10.4; 1.10.80; 1.10.84;
This is a boat-load of changes designed to finish parameterizing the
stuff necessary to separate out AR5312 from AR5315. This includes:

1) rework of arbus IRQs, so that IRQs are now seperately specified
as either MISC or CPU irqs
2) move board/chip-specific addresses into chip-dependent file
3) unencumber argpio from ar5312 specifics, using properties to pass
details such as reset-pin and sysled-pin.
4) an option to select which WiSoC is to be configured is provided.

AR5315 support should be forthcoming shortly now.
 1.9  28-Aug-2006  gdamore First pass at cleanup AR5312 WiSoC support to enable better & cleaner
sharing of code with the AR5315, which has many similarities, but many
differences from the AR5312.

No functional change at this time, other than the cpu_model string
(and also sysctl.hw.model node) is changed to reflect the WiSoC cpu
name rather than the identification string in ROM (which tends to not
be very informative.)
 1.8  13-Jul-2006  gdamore Activate argpio. Apparently I forgot to commit this change earlier.
Noticed while merging other com(4) changes.
 1.7  05-Jun-2006  gdamore branches: 1.7.2; 1.7.4;
Import new HAL 0.9.17.2. Approved by sam@

New HAL includes some driver changes to register accesses.
Adds support for WLAN devices on AR5312 family devices.
Adds support 32-bit SPARC ath devices (untested).
ath enabled in SPARC64 GENERIC builds.
This HAL is tested and known to work for i386 PCI devices, SPARC64 PCI devices,
and AR5312 WiSoC devices. MIPS PCI devices appear to be busted (possibly only
on Alchemy hardware, unconfirmed), and cardbus support is untested due to
lack of test hardware.

Please report any new problems with this import to garrett@.
 1.6  25-May-2006  gdamore Rename flash to athflash to reflect MD nature. Approved by simon@ and dyoung@
 1.5  25-May-2006  gdamore Add flash device support.
 1.4  14-May-2006  elad branches: 1.4.2;
integrate kauth.
 1.3  11-May-2006  gdamore A zero mask means that the device should always be enabled.
 1.2  02-Apr-2006  gdamore branches: 1.2.2; 1.2.4; 1.2.6;
Interrupt values (aa_irq) can be zero, and represent a real interrupt.
Please display them.
 1.1  21-Mar-2006  gdamore branches: 1.1.2;
Initial import of Atheros AR531X SoC support. Currently the onboard ethernet
and serial ports are supported, and the system appears stable with an NFS
mounted root. An earlier version of the code was reviewed by simon@, but it
has since had numerous improvements and cleanups.


At the moment, only AR5312 is known to work, but I suspect AR2313 will work
as well. Later 2315/2316 parts are substantially different, and are not yet
supported. Wifi and Marvell switch support found on some designs are not yet
supported.

Platforms known to include AR5312 include Senao Aries 2 (AP5054) and Netgear
WGU624.
 1.1.2.3  24-May-2006  tron Merge 2006-05-24 NetBSD-current into the "peter-altq" branch.
 1.1.2.2  28-Mar-2006  tron Merge 2006-03-28 NetBSD-current into the "peter-altq" branch.
 1.1.2.1  21-Mar-2006  tron file arbus.c was added on branch peter-altq on 2006-03-28 09:47:17 +0000
 1.2.6.4  07-Jun-2006  kardel Sync with head.
 1.2.6.3  01-Jun-2006  kardel Sync with head.
 1.2.6.2  22-Apr-2006  simonb Sync with head.
 1.2.6.1  02-Apr-2006  simonb file arbus.c was added on branch simonb-timecounters on 2006-04-22 11:37:42 +0000
 1.2.4.3  11-May-2006  elad sync with head
 1.2.4.2  19-Apr-2006  elad sync with head - hopefully this will work
 1.2.4.1  02-Apr-2006  elad file arbus.c was added on branch elad-kernelauth on 2006-04-19 02:33:12 +0000
 1.2.2.7  14-Sep-2006  yamt sync with head.
 1.2.2.6  03-Sep-2006  yamt sync with head.
 1.2.2.5  11-Aug-2006  yamt sync with head
 1.2.2.4  26-Jun-2006  yamt sync with head.
 1.2.2.3  24-May-2006  yamt sync with head.
 1.2.2.2  11-Apr-2006  yamt sync files somehow mis-tagged by yamt-pdpolicy-base2.
 1.2.2.1  02-Apr-2006  yamt file arbus.c was added on branch yamt-pdpolicy on 2006-04-11 12:20:51 +0000
 1.4.2.1  19-Jun-2006  chap Sync with head.
 1.7.4.3  30-Dec-2006  yamt sync with head.
 1.7.4.2  21-Jun-2006  yamt sync with head.
 1.7.4.1  05-Jun-2006  yamt file arbus.c was added on branch yamt-lazymbuf on 2006-06-21 14:53:38 +0000
 1.7.2.1  13-Jul-2006  gdamore Merge from HEAD.
 1.10.84.1  05-Mar-2011  rmind sync with head
 1.10.80.1  10-Jan-2010  matt Add generic support for DMA bounce buffers and real version of
bus_dmatag_subregion. MALTA uses it for ISADMA. Make RMIXL use
for creating 32bit and 29bit subregions.
 1.10.4.2  09-Sep-2006  rpaulo sync with head
 1.10.4.1  04-Sep-2006  rpaulo file arbus.c was added on branch rpaulo-netinet-merge-pcb on 2006-09-09 02:41:25 +0000
 1.11.4.1  05-Mar-2011  bouyer Sync with HEAD
 1.11.2.1  06-Jun-2011  jruoho Sync with HEAD.
 1.15.68.2  22-Mar-2021  thorpej Audit CFARG_IATTR in config_found() calls, and remove it in situations
where the interface attribute is not ambiguous.
 1.15.68.1  22-Mar-2021  thorpej Mechanical conversion of config_found_sm_loc() -> config_found().
CFARG_IATTR usage needs to be audited.
 1.16.8.1  04-Aug-2021  thorpej Adapt to CFARGS().

RSS XML Feed