The NetBSD Project

CVS log for src/sys/dev/pci/pcivar.h

[BACK] Up to [cvs.NetBSD.org] / src / sys / dev / pci

Request diff between arbitrary revisions


Default branch: MAIN


Revision 1.117 / (download) - annotate - [select for diffs], Sun Feb 27 14:18:52 2022 UTC (2 years, 1 month ago) by riastradh
Branch: MAIN
CVS Tags: thorpej-ifq-base, thorpej-ifq, thorpej-altq-separation-base, thorpej-altq-separation, netbsd-10-base, netbsd-10-0-RELEASE, netbsd-10-0-RC6, netbsd-10-0-RC5, netbsd-10-0-RC4, netbsd-10-0-RC3, netbsd-10-0-RC2, netbsd-10-0-RC1, netbsd-10, bouyer-sunxi-drm-base, bouyer-sunxi-drm, HEAD
Changes since 1.116: +9 -1 lines
Diff to previous 1.116 (colored) to selected 1.71 (colored)

pci(9): Provide default definition of pci_get_segment, always zero.

pci_machdep.h can define __HAVE_PCI_GET_SEGMENT to provide a nonzero
definition.

Revision 1.116 / (download) - annotate - [select for diffs], Wed Sep 15 17:33:08 2021 UTC (2 years, 7 months ago) by thorpej
Branch: MAIN
Changes since 1.115: +1 -26 lines
Diff to previous 1.115 (colored) to selected 1.71 (colored)

Adjust the device_call() calling convention so as to provide type checking
of the arguments passed to the call, using auto-generated argument
structures and binding macros.

Revision 1.114.6.1 / (download) - annotate - [select for diffs], Mon May 31 22:15:18 2021 UTC (2 years, 10 months ago) by cjep
Branch: cjep_staticlib_x
Changes since 1.114: +26 -1 lines
Diff to previous 1.114 (colored) next main 1.115 (colored) to selected 1.71 (colored)

sync with head

Revision 1.114.4.1 / (download) - annotate - [select for diffs], Thu May 13 00:47:31 2021 UTC (2 years, 11 months ago) by thorpej
Branch: thorpej-i2c-spi-conf
Changes since 1.114: +26 -1 lines
Diff to previous 1.114 (colored) next main 1.115 (colored) to selected 1.71 (colored)

Sync with HEAD.

Revision 1.115 / (download) - annotate - [select for diffs], Wed May 12 23:22:33 2021 UTC (2 years, 11 months ago) by thorpej
Branch: MAIN
CVS Tags: thorpej-i2c-spi-conf2-base, thorpej-i2c-spi-conf2, thorpej-i2c-spi-conf-base, thorpej-futex2-base, thorpej-futex2, thorpej-cfargs2-base, thorpej-cfargs2, cjep_sun2x-base1, cjep_sun2x-base, cjep_sun2x, cjep_staticlib_x-base1
Changes since 1.114: +26 -1 lines
Diff to previous 1.114 (colored) to selected 1.71 (colored)

- Define a device call for PCI bus instances to fetch a direct child's
  device handle given the device's device/function #s (extracted from
  a pcitag_t).  Use it to associate the handle with the child device
  at config_found() time.
- Implement this device call for ACPI and OpenFirmware.
- Enable the OpenFirmware variant for evbarm FDT, macppc, ofppc, sparc64.
- Obsolete acpi_device_register(); it is no longer needed.
- Obsolete setting the OpenFirmware handle in PCI devices in the
  sparc64 device_register(); it is no longer needed.

Revision 1.113.12.1 / (download) - annotate - [select for diffs], Sat Apr 3 22:28:49 2021 UTC (3 years ago) by thorpej
Branch: thorpej-futex
Changes since 1.113: +18 -2 lines
Diff to previous 1.113 (colored) next main 1.114 (colored) to selected 1.71 (colored)

Sync with HEAD.

Revision 1.114 / (download) - annotate - [select for diffs], Wed Jan 27 05:00:16 2021 UTC (3 years, 2 months ago) by thorpej
Branch: MAIN
CVS Tags: thorpej-futex-base, thorpej-cfargs-base, thorpej-cfargs, cjep_staticlib_x-base
Branch point for: thorpej-i2c-spi-conf, cjep_staticlib_x
Changes since 1.113: +18 -2 lines
Diff to previous 1.113 (colored) to selected 1.71 (colored)

Introduce autoconfiguration helpers based around device_compatible_entry:
- pci_compatible_match(): matches against the PCI ID.
- pci_compatible_match_subsys(): matches against PCI SUBSYS ID.
- pci_compatible_lookup(): look up entry by PCI ID.
- pci_compatible_lookup_subsys(): look up entry by PCI SUBSYS ID.
- pci_compatible_lookup_id(): look up entry by an arbitrary ID using the
  PCI ID code conventions.

- Define PCI_COMPAT_EOL as a compat data array sentinel.

Revision 1.112.2.1 / (download) - annotate - [select for diffs], Mon Jun 10 22:07:27 2019 UTC (4 years, 10 months ago) by christos
Branch: phil-wifi
Changes since 1.112: +22 -1 lines
Diff to previous 1.112 (colored) next main 1.113 (colored) to selected 1.71 (colored)

Sync with HEAD

Revision 1.110.2.3 / (download) - annotate - [select for diffs], Wed Dec 26 14:02:00 2018 UTC (5 years, 3 months ago) by pgoyette
Branch: pgoyette-compat
CVS Tags: pgoyette-compat-merge-20190127
Changes since 1.110.2.2: +22 -1 lines
Diff to previous 1.110.2.2 (colored) to branchpoint 1.110 (colored) next main 1.111 (colored) to selected 1.71 (colored)

Sync with HEAD, resolve a few conflicts

Revision 1.109.8.2 / (download) - annotate - [select for diffs], Fri Dec 7 13:27:19 2018 UTC (5 years, 4 months ago) by martin
Branch: netbsd-8
CVS Tags: netbsd-8-2-RELEASE, netbsd-8-1-RELEASE, netbsd-8-1-RC1
Changes since 1.109.8.1: +22 -1 lines
Diff to previous 1.109.8.1 (colored) to branchpoint 1.109 (colored) next main 1.110 (colored) to selected 1.71 (colored)

Pull up following revision(s) (requested by msaitoh in ticket #1128):

	sys/dev/pci/pcivar.h: revision 1.113
	sys/dev/pci/pci.c: revision 1.153

  Save control registers in PCI-X, PCIe, MSI and MSI-X capability area when
suspend and restore them when resume. For PCIe capabilities register, it's
required to check the existence of each register to not to write the next area.

  This change fixes a stability of suspend/resume.

Revision 1.113 / (download) - annotate - [select for diffs], Sat Dec 1 01:23:24 2018 UTC (5 years, 4 months ago) by msaitoh
Branch: MAIN
CVS Tags: phil-wifi-20200421, phil-wifi-20200411, phil-wifi-20200406, phil-wifi-20191119, phil-wifi-20190609, pgoyette-compat-20190127, pgoyette-compat-20190118, pgoyette-compat-1226, netbsd-9-base, netbsd-9-3-RELEASE, netbsd-9-2-RELEASE, netbsd-9-1-RELEASE, netbsd-9-0-RELEASE, netbsd-9-0-RC2, netbsd-9-0-RC1, netbsd-9, isaki-audio2-base, isaki-audio2, is-mlppp-base, is-mlppp, bouyer-xenpvh-base2, bouyer-xenpvh-base1, bouyer-xenpvh-base, bouyer-xenpvh, ad-namecache-base3, ad-namecache-base2, ad-namecache-base1, ad-namecache-base, ad-namecache
Branch point for: thorpej-futex
Changes since 1.112: +22 -1 lines
Diff to previous 1.112 (colored) to selected 1.71 (colored)

 Save control registers in PCI-X, PCIe, MSI and MSI-X capability area when
suspend and restore them when resume. For PCIe cababilities register, it's
required to check the existence of each register to not to write the next area.

 This chagnge fixes a stability of suspend/resume.

Revision 1.109.8.1 / (download) - annotate - [select for diffs], Thu Jun 7 15:52:54 2018 UTC (5 years, 10 months ago) by martin
Branch: netbsd-8
CVS Tags: netbsd-8-0-RELEASE, netbsd-8-0-RC2
Changes since 1.109: +3 -1 lines
Diff to previous 1.109 (colored) to selected 1.71 (colored)

Pull up following revision(s) (requested by jakllsch in ticket #832):

	sys/dev/pci/pcivar.h: revision 1.112
	sys/dev/pci/pci_map.c: revision 1.34,1.35
	sys/arch/x86/x86/efi.c: revision 1.15

Enable the appropriate memory or I/O space decode in the PCI
Command/Status Register upon mapping a BAR.

This should fix PR #53286.  It's also possible there are other similar
PRs that might be fixed by this.
 -
Refine previous change to enable PCI window decoding in Command
Register upon mapping; conditionalize on a global variable, that is set
to true on x86 machines booting under EFI.

For now, initialize the global variable at compile time to false.  This
is intended to limit potential problems for other NetBSD ports, should
this changeset be pulled up to netbsd-8.

Related to PR #53286.

Revision 1.110.2.2 / (download) - annotate - [select for diffs], Mon May 21 04:36:11 2018 UTC (5 years, 10 months ago) by pgoyette
Branch: pgoyette-compat
Changes since 1.110.2.1: +3 -1 lines
Diff to previous 1.110.2.1 (colored) to branchpoint 1.110 (colored) to selected 1.71 (colored)

Sync with HEAD

Revision 1.112 / (download) - annotate - [select for diffs], Sat May 19 17:18:57 2018 UTC (5 years, 10 months ago) by jakllsch
Branch: MAIN
CVS Tags: phil-wifi-base, pgoyette-compat-1126, pgoyette-compat-1020, pgoyette-compat-0930, pgoyette-compat-0906, pgoyette-compat-0728, pgoyette-compat-0625, pgoyette-compat-0521, jdolecek-ncqfixes-base, jdolecek-ncqfixes
Branch point for: phil-wifi
Changes since 1.111: +3 -1 lines
Diff to previous 1.111 (colored) to selected 1.71 (colored)

Refine previous change to enable PCI window decoding in Command
Register upon mapping; conditionalize on a global variable, that is set
to true on x86 machines booting under EFI.

For now, initialize the global variable at compile time to false.  This
is intended to limit potential problems for other NetBSD ports, should
this changeset be pulled up to netbsd-8.

Related to PR #53286.

Revision 1.110.2.1 / (download) - annotate - [select for diffs], Sun Apr 22 07:20:26 2018 UTC (5 years, 11 months ago) by pgoyette
Branch: pgoyette-compat
Changes since 1.110: +3 -3 lines
Diff to previous 1.110 (colored) to selected 1.71 (colored)

Sync with HEAD

Revision 1.111 / (download) - annotate - [select for diffs], Thu Apr 19 21:50:09 2018 UTC (5 years, 11 months ago) by christos
Branch: MAIN
CVS Tags: pgoyette-compat-0502, pgoyette-compat-0422
Changes since 1.110: +3 -3 lines
Diff to previous 1.110 (colored) to selected 1.71 (colored)

s/static inline/static __inline/g for consistency.

Revision 1.110 / (download) - annotate - [select for diffs], Wed Feb 28 05:50:06 2018 UTC (6 years, 1 month ago) by msaitoh
Branch: MAIN
CVS Tags: pgoyette-compat-base, pgoyette-compat-0415, pgoyette-compat-0407, pgoyette-compat-0330, pgoyette-compat-0322, pgoyette-compat-0315
Branch point for: pgoyette-compat
Changes since 1.109: +5 -3 lines
Diff to previous 1.109 (colored) to selected 1.71 (colored)

- Add new PCI quirk PCI_QUIRK_HASEXTCNF and PCI_QUIRK_NOEXTCNF. Some devices'
  extended configuration area may be broken or violate spec. If an extended
  configuration space is strange but it really exist, use PCI_QUIRK_HASEXTCNF.
  If an extended configuration space is plausible to exist but it really
  doesn't exist, use PCI_QUIRK_NOEXTCNF.
- Add PCI_PRODUCT_INTEL_XEOND_MEM_0_TTR_1(0x6fa8) and
  PCI_PRODUCT_INTEL_COREI76K_IMC_0(0x6f68) with PCI_QUIRK_HASEXTCNF. The
  document clearly states they violate spec and it support the extended
  configuration space.

Revision 1.98.6.2 / (download) - annotate - [select for diffs], Sun Dec 3 11:37:28 2017 UTC (6 years, 4 months ago) by jdolecek
Branch: tls-maxphys
Changes since 1.98.6.1: +49 -2 lines
Diff to previous 1.98.6.1 (colored) to branchpoint 1.98 (colored) next main 1.99 (colored) to selected 1.71 (colored)

update from HEAD

Revision 1.108.2.1 / (download) - annotate - [select for diffs], Sat Jan 7 08:56:40 2017 UTC (7 years, 3 months ago) by pgoyette
Branch: pgoyette-localcount
Changes since 1.108: +13 -2 lines
Diff to previous 1.108 (colored) next main 1.109 (colored) to selected 1.71 (colored)

Sync with HEAD.  (Note that most of these changes are simply $NetBSD$
tag issues.)

Revision 1.100.2.6 / (download) - annotate - [select for diffs], Mon Dec 5 10:55:16 2016 UTC (7 years, 4 months ago) by skrll
Branch: nick-nhusb
Changes since 1.100.2.5: +13 -2 lines
Diff to previous 1.100.2.5 (colored) to branchpoint 1.100 (colored) next main 1.101 (colored) to selected 1.71 (colored)

Sync with HEAD

Revision 1.109 / (download) - annotate - [select for diffs], Fri Nov 25 12:10:59 2016 UTC (7 years, 4 months ago) by knakahara
Branch: MAIN
CVS Tags: tls-maxphys-base-20171202, prg-localcount2-base3, prg-localcount2-base2, prg-localcount2-base1, prg-localcount2-base, prg-localcount2, pgoyette-localcount-20170426, pgoyette-localcount-20170320, pgoyette-localcount-20170107, perseant-stdc-iso10646-base, perseant-stdc-iso10646, nick-nhusb-base-20170825, nick-nhusb-base-20170204, nick-nhusb-base-20161204, netbsd-8-base, netbsd-8-0-RC1, matt-nb8-mediatek-base, matt-nb8-mediatek, jdolecek-ncq-base, jdolecek-ncq, bouyer-socketcan-base1, bouyer-socketcan-base, bouyer-socketcan
Branch point for: netbsd-8
Changes since 1.108: +13 -2 lines
Diff to previous 1.108 (colored) to selected 1.71 (colored)

provide all PCI MSI/MSI-X manipulation stub functions.

"#ifdef __HAVE_PCI_MSI_MSIX" workaround such as nvme_pci(4) is not required
any more.
    http://mail-index.netbsd.org/source-changes/2016/09/17/msg077799.html

Revision 1.100.2.5 / (download) - annotate - [select for diffs], Wed Oct 5 20:55:55 2016 UTC (7 years, 6 months ago) by skrll
Branch: nick-nhusb
Changes since 1.100.2.4: +2 -2 lines
Diff to previous 1.100.2.4 (colored) to branchpoint 1.100 (colored) to selected 1.71 (colored)

Sync with HEAD

Revision 1.108 / (download) - annotate - [select for diffs], Mon Jul 11 06:14:51 2016 UTC (7 years, 9 months ago) by knakahara
Branch: MAIN
CVS Tags: pgoyette-localcount-base, pgoyette-localcount-20161104, pgoyette-localcount-20160806, pgoyette-localcount-20160726, nick-nhusb-base-20161004, localcount-20160914
Branch point for: pgoyette-localcount
Changes since 1.107: +2 -2 lines
Diff to previous 1.107 (colored) to selected 1.71 (colored)

pci_intr_type() is required pci_chipset_tag_t argument by other than x86.

pointed out by nonaka@n.o.

Revision 1.100.2.4 / (download) - annotate - [select for diffs], Sun Dec 27 12:09:57 2015 UTC (8 years, 3 months ago) by skrll
Branch: nick-nhusb
Changes since 1.100.2.3: +30 -3 lines
Diff to previous 1.100.2.3 (colored) to branchpoint 1.100 (colored) to selected 1.71 (colored)

Sync with HEAD (as of 26th Dec)

Revision 1.107 / (download) - annotate - [select for diffs], Fri Oct 30 20:03:45 2015 UTC (8 years, 5 months ago) by msaitoh
Branch: MAIN
CVS Tags: nick-nhusb-base-20160907, nick-nhusb-base-20160529, nick-nhusb-base-20160422, nick-nhusb-base-20160319, nick-nhusb-base-20151226
Changes since 1.106: +6 -1 lines
Diff to previous 1.106 (colored) to selected 1.71 (colored)

 - Move PCI_INTRSTR_LEN from pcireg.h to pcivar.h.
 - In PCI-X cap, print 2nd bus's PCI-X mode, error protection type, Max clock
   frequency and Max clock period.
 - In SATA cap, print register location correctly.
 - In Virtual Channel cap, print reference clock with "ns".
 - In Root Complex Link Declaration, print Link Entry number.

Revision 1.106 / (download) - annotate - [select for diffs], Thu Oct 22 09:45:32 2015 UTC (8 years, 5 months ago) by knakahara
Branch: MAIN
Changes since 1.105: +15 -1 lines
Diff to previous 1.105 (colored) to selected 1.71 (colored)

add pci_intr_alloc related stubs to reduce ifdef from device drivers.

Revision 1.105 / (download) - annotate - [select for diffs], Fri Oct 2 05:22:53 2015 UTC (8 years, 6 months ago) by msaitoh
Branch: MAIN
Changes since 1.104: +11 -3 lines
Diff to previous 1.104 (colored) to selected 1.71 (colored)

PCI Extended Configuration stuff written by nonaka@:
- Add PCI Extended Configuration Space support into x86.
- Check register offset of pci_conf_read() in MD part. It returns (pcireg_t)-1
  if it isn't accessible.
- Decode Extended Capability in PCI Extended Configuration Space.
  Currently the following extended capabilities are decoded:
   - Advanced Error Reporting
   - Virtual Channel
   - Device Serial Number
   - Power Budgeting
   - Root Complex Link Declaration
   - Root Complex Event Collector Association
   - Access Control Services
   - Alternative Routing-ID Interpretation
   - Address Translation Services
   - Single Root IO Virtualization
   - Page Request
   - TPH Requester
   - Latency Tolerance Reporting
   - Secondary PCI Express
   - Process Address Space ID
   - LN Requester
   - L1 PM Substates
  The following extended capabilities are not decoded yet:
   - Root Complex Internal Link Control
   - Multi-Function Virtual Channel
   - RCRB Header
   - Vendor Unique
   - Configuration Access Correction
   - Multiple Root IO Virtualization
   - Multicast
   - Resizable BAR
   - Dynamic Power Allocation
   - Protocol Multiplexing
   - Downstream Port Containment
   - Precision Time Management
   - M-PCIe
   - Function Reading Status Queueing
   - Readiness Time Reporting
   - Designated Vendor-Specific

Revision 1.100.2.3 / (download) - annotate - [select for diffs], Tue Sep 22 12:05:59 2015 UTC (8 years, 6 months ago) by skrll
Branch: nick-nhusb
Changes since 1.100.2.2: +5 -1 lines
Diff to previous 1.100.2.2 (colored) to branchpoint 1.100 (colored) to selected 1.71 (colored)

Sync with HEAD

Revision 1.104 / (download) - annotate - [select for diffs], Mon Aug 17 06:16:03 2015 UTC (8 years, 8 months ago) by knakahara
Branch: MAIN
CVS Tags: nick-nhusb-base-20150921
Changes since 1.103: +3 -1 lines
Diff to previous 1.103 (colored) to selected 1.71 (colored)

Add kernel code to support intrctl(8).

Revision 1.103 / (download) - annotate - [select for diffs], Thu Aug 13 04:39:33 2015 UTC (8 years, 8 months ago) by msaitoh
Branch: MAIN
Changes since 1.102: +3 -1 lines
Diff to previous 1.102 (colored) to selected 1.71 (colored)

- Don't take pci_attach_args as an argument in pci_msi[x]_count().
- Move prototypes of pci_msi[x]_count() from x86/x86/pci_machdep_common to
  sys/dev/pci/pcivar.h.
- Move pci_msi[x]_count() from x86/pci/pci_msi_machdep.c to sys/dev/pci/pci.c

Revision 1.100.2.2 / (download) - annotate - [select for diffs], Sat Jun 6 14:40:12 2015 UTC (8 years, 10 months ago) by skrll
Branch: nick-nhusb
Changes since 1.100.2.1: +3 -2 lines
Diff to previous 1.100.2.1 (colored) to branchpoint 1.100 (colored) to selected 1.71 (colored)

Sync with HEAD

Revision 1.102 / (download) - annotate - [select for diffs], Mon Apr 27 07:03:58 2015 UTC (8 years, 11 months ago) by knakahara
Branch: MAIN
CVS Tags: nick-nhusb-base-20150606
Changes since 1.101: +2 -1 lines
Diff to previous 1.101 (colored) to selected 1.71 (colored)

add x86 MD MSI/MSI-X support code.

Revision 1.100.2.1 / (download) - annotate - [select for diffs], Mon Apr 6 15:18:12 2015 UTC (9 years ago) by skrll
Branch: nick-nhusb
Changes since 1.100: +5 -1 lines
Diff to previous 1.100 (colored) to selected 1.71 (colored)

Sync with HEAD

Revision 1.98.2.1 / (download) - annotate - [select for diffs], Fri Jan 16 08:22:25 2015 UTC (9 years, 3 months ago) by snj
Branch: netbsd-6
Changes since 1.98: +5 -1 lines
Diff to previous 1.98 (colored) next main 1.99 (colored) to selected 1.71 (colored)

Pull up following revision(s) (requested by msaitoh in ticket #1229):
	sys/arch/x86/pci/ichlpcib.c: revision 1.40, 1.45
	sys/dev/pci/pcivar.h: revision 1.101
	sys/dev/pci/pci_map.c: revision 1.32
	sys/dev/ic/i82801lpcreg.h: revision 1.12
Use '\n' at the end of all aprint_error_dev() format strings.
--
Fix a bug that ichlpcib(4) maps I/O area incorrectly and then fails to attach
gpio. It might also fixes ACPI related problem described in PR#48960:
 - The LPCIB_PCI_PMBASE and LPCIB_PCI_GPIO register are alike PCI BAR but not
   completely compatible with it. It's ok because the registers' addresses are
   out of BAR0-BAR5(0x10-0x24) and are located in the device-dependent header.
   The PMBASE and GPIO registers define the base address and the type but not
   describe the size. The size is fixed to 128bytes. So use
   pci_mapreg_submap().
 - Make pci_mapreg_submap() extern again.
 - Fix the calculation of the map size in pci_mapreg_submap().

Revision 1.99.4.2 / (download) - annotate - [select for diffs], Thu Jan 8 11:39:37 2015 UTC (9 years, 3 months ago) by martin
Branch: netbsd-7
CVS Tags: netbsd-7-nhusb-base-20170116, netbsd-7-nhusb-base, netbsd-7-nhusb, netbsd-7-2-RELEASE, netbsd-7-1-RELEASE, netbsd-7-1-RC2, netbsd-7-1-RC1, netbsd-7-1-2-RELEASE, netbsd-7-1-1-RELEASE, netbsd-7-1, netbsd-7-0-RELEASE, netbsd-7-0-RC3, netbsd-7-0-RC2, netbsd-7-0-RC1, netbsd-7-0-2-RELEASE, netbsd-7-0-1-RELEASE, netbsd-7-0
Changes since 1.99.4.1: +5 -1 lines
Diff to previous 1.99.4.1 (colored) to branchpoint 1.99 (colored) next main 1.100 (colored) to selected 1.71 (colored)

Pull up following revision(s) (requested by msaitoh in ticket #394):
	sys/dev/pci/pcivar.h: revision 1.101
	sys/dev/pci/pci_map.c: revision 1.32
	sys/dev/ic/i82801lpcreg.h: revision 1.12
	sys/arch/x86/pci/ichlpcib.c: revision 1.45
Fix a bug that ichlpcib(4) maps I/O area incorrectly and then fails to attach
gpio. It might also fix ACPI related problem described in PR#48960:
  - The LPCIB_PCI_PMBASE and LPCIB_PCI_GPIO register are alike PCI BAR but not
    completely compatible with it. It's ok because the registers' addresses are
    out of BAR0-BAR5(0x10-0x24) and are located in the device-dependent header.
    The PMBASE and GPIO registers define the base address and the type but not
    describe the size. The size is fixed to 128bytes. So use
    pci_mapreg_submap().
  - Make pci_mapreg_submap() extern again.
  - Fix the calculation of the map size in pci_mapreg_submap().

Revision 1.101 / (download) - annotate - [select for diffs], Fri Dec 26 05:09:03 2014 UTC (9 years, 3 months ago) by msaitoh
Branch: MAIN
CVS Tags: nick-nhusb-base-20150406
Changes since 1.100: +5 -1 lines
Diff to previous 1.100 (colored) to selected 1.71 (colored)

Fix a bug that ichlpcib(4) maps I/O area incorrectly and then fails to attach
gpio. It might also fix ACPI related problem described in PR#48960:
 - The LPCIB_PCI_PMBASE and LPCIB_PCI_GPIO register are alike PCI BAR but not
   completely compatible with it. It's ok because the registers' addresses are
   out of BAR0-BAR5(0x10-0x24) and are located in the device-dependent header.
   The PMBASE and GPIO registers define the base address and the type but not
   describe the size. The size is fixed to 128bytes. So use
   pci_mapreg_submap().
 - Make pci_mapreg_submap() extern again.
 - Fix the calculation of the map size in pci_mapreg_submap().

Revision 1.99.4.1 / (download) - annotate - [select for diffs], Fri Oct 17 07:14:32 2014 UTC (9 years, 6 months ago) by martin
Branch: netbsd-7
Changes since 1.99: +2 -2 lines
Diff to previous 1.99 (colored) to selected 1.71 (colored)

Pull up following revision(s) (requested by riastradh in ticket #144):
	sys/dev/pci/radeonfb.c: revision 1.85
	sys/dev/pci/pcivar.h: revision 1.100
	sys/dev/pci/pci_map.c: revision 1.31
	sys/external/bsd/drm2/include/linux/pci.h: revision 1.9
Generalize pci_find_rom and use it to locate x86 video ROM in drm2.
- Make pci_find_rom take the ROM `BAR' size as a parameter, instead
  of using pci_find_mem with the ROM `BAR' to detect the size.
- Use it to find the x86 video ROM in [0xc0000, 0xe0000) in drm2,
  when nothing else reports that location.
- Adapt the one other caller in radeonfb, which already has the
  maximum ROM size handy (romsz).
XXX pullup to netbsd-7

Revision 1.100 / (download) - annotate - [select for diffs], Thu Oct 16 12:31:23 2014 UTC (9 years, 6 months ago) by riastradh
Branch: MAIN
CVS Tags: nick-nhusb-base
Branch point for: nick-nhusb
Changes since 1.99: +2 -2 lines
Diff to previous 1.99 (colored) to selected 1.71 (colored)

Generalize pci_find_rom and use it to locate x86 video ROM in drm2.

- Make pci_find_rom take the ROM `BAR' size as a parameter, instead
  of using pci_find_mem with the ROM `BAR' to detect the size.

- Use it to find the x86 video ROM in [0xc0000, 0xe0000) in drm2,
  when nothing else reports that location.

- Adapt the one other caller in radeonfb, which already has the
  maximum ROM size handy (romsz).

XXX pullup to netbsd-7

Revision 1.98.6.1 / (download) - annotate - [select for diffs], Wed Aug 20 00:03:48 2014 UTC (9 years, 7 months ago) by tls
Branch: tls-maxphys
Changes since 1.98: +2 -2 lines
Diff to previous 1.98 (colored) to selected 1.71 (colored)

Rebase to HEAD as of a few days ago.

Revision 1.96.2.2 / (download) - annotate - [select for diffs], Thu May 22 11:40:33 2014 UTC (9 years, 10 months ago) by yamt
Branch: yamt-pagecache
Changes since 1.96.2.1: +2 -2 lines
Diff to previous 1.96.2.1 (colored) to branchpoint 1.96 (colored) next main 1.97 (colored) to selected 1.71 (colored)

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")

Revision 1.98.10.1 / (download) - annotate - [select for diffs], Sun May 18 17:45:44 2014 UTC (9 years, 11 months ago) by rmind
Branch: rmind-smpnet
Changes since 1.98: +2 -2 lines
Diff to previous 1.98 (colored) next main 1.99 (colored) to selected 1.71 (colored)

sync with head

Revision 1.99 / (download) - annotate - [select for diffs], Sat Mar 29 19:28:25 2014 UTC (10 years ago) by christos
Branch: MAIN
CVS Tags: yamt-pagecache-base9, tls-maxphys-base, tls-earlyentropy-base, tls-earlyentropy, rmind-smpnet-nbase, rmind-smpnet-base, riastradh-xf86-video-intel-2-7-1-pre-2-21-15, netbsd-7-base
Branch point for: netbsd-7
Changes since 1.98: +2 -2 lines
Diff to previous 1.98 (colored) to selected 1.71 (colored)

make pci_intr_string and eisa_intr_string take a buffer and a length
instead of relying in local static storage.

Revision 1.83.12.2 / (download) - annotate - [select for diffs], Sat Feb 15 10:17:20 2014 UTC (10 years, 2 months ago) by matt
Branch: matt-nb5-mips64
Changes since 1.83.12.1: +8 -1 lines
Diff to previous 1.83.12.1 (colored) to branchpoint 1.83 (colored) next main 1.84 (colored) to selected 1.71 (colored)

Add a few OKAY flags from HEAD

Revision 1.83.12.1 / (download) - annotate - [select for diffs], Tue Nov 5 18:34:44 2013 UTC (10 years, 5 months ago) by matt
Branch: matt-nb5-mips64
Changes since 1.83: +5 -1 lines
Diff to previous 1.83 (colored) to selected 1.71 (colored)

Pull in support for pci_aprint_devinfo_fancy

Revision 1.96.2.1 / (download) - annotate - [select for diffs], Tue Apr 17 00:07:57 2012 UTC (12 years ago) by yamt
Branch: yamt-pagecache
CVS Tags: yamt-pagecache-tag8
Changes since 1.96: +5 -1 lines
Diff to previous 1.96 (colored) to selected 1.71 (colored)

sync with head

Revision 1.96.6.1 / (download) - annotate - [select for diffs], Sat Feb 18 07:34:50 2012 UTC (12 years, 2 months ago) by mrg
Branch: jmcneill-usbmp
Changes since 1.96: +5 -1 lines
Diff to previous 1.96 (colored) next main 1.97 (colored) to selected 1.71 (colored)

merge to -current.

Revision 1.98 / (download) - annotate - [select for diffs], Sun Jan 29 11:31:38 2012 UTC (12 years, 2 months ago) by drochner
Branch: MAIN
CVS Tags: yamt-pagecache-base8, yamt-pagecache-base7, yamt-pagecache-base6, yamt-pagecache-base5, yamt-pagecache-base4, riastradh-drm2-base3, riastradh-drm2-base2, riastradh-drm2-base1, riastradh-drm2-base, riastradh-drm2, netbsd-6-base, netbsd-6-1-RELEASE, netbsd-6-1-RC4, netbsd-6-1-RC3, netbsd-6-1-RC2, netbsd-6-1-RC1, netbsd-6-1-5-RELEASE, netbsd-6-1-4-RELEASE, netbsd-6-1-3-RELEASE, netbsd-6-1-2-RELEASE, netbsd-6-1-1-RELEASE, netbsd-6-1, netbsd-6-0-RELEASE, netbsd-6-0-RC2, netbsd-6-0-RC1, netbsd-6-0-6-RELEASE, netbsd-6-0-5-RELEASE, netbsd-6-0-4-RELEASE, netbsd-6-0-3-RELEASE, netbsd-6-0-2-RELEASE, netbsd-6-0-1-RELEASE, netbsd-6-0, matt-nb6-plus-nbase, matt-nb6-plus-base, matt-nb6-plus, khorben-n900, jmcneill-usbmp-base9, jmcneill-usbmp-base8, jmcneill-usbmp-base7, jmcneill-usbmp-base6, jmcneill-usbmp-base5, jmcneill-usbmp-base4, jmcneill-usbmp-base3, jmcneill-usbmp-base2, jmcneill-usbmp-base10, agc-symver-base, agc-symver
Branch point for: tls-maxphys, rmind-smpnet, netbsd-6
Changes since 1.97: +5 -2 lines
Diff to previous 1.97 (colored) to selected 1.71 (colored)

extend the pci_aprint_devinfo slightly to cover the cases commonly
used by drivers: a short name for the quiet/naive case and a string
to override the "pcidevs" based name by one provided by the driver,
ride on yesterday's kernel minor version bump

Revision 1.97 / (download) - annotate - [select for diffs], Thu Jan 26 21:17:28 2012 UTC (12 years, 2 months ago) by drochner
Branch: MAIN
Changes since 1.96: +2 -1 lines
Diff to previous 1.96 (colored) to selected 1.71 (colored)

put printing of the pci_devinfo into its own function (not inlined
by purpose) - this is a stack hog, and with this change my uTCA amd64
system boots again
a lot of similar code can be eliminated from pci device drivers this way,
but before doing so (and making the new function part of the module API)
I'd like to consider a modification to make it work with drivers which
prefer to print names from other sources (like pciide)

Revision 1.96 / (download) - annotate - [select for diffs], Fri Oct 21 21:35:28 2011 UTC (12 years, 5 months ago) by dyoung
Branch: MAIN
CVS Tags: yamt-pagecache-base3, yamt-pagecache-base2, yamt-pagecache-base, jmcneill-usbmp-pre-base2, jmcneill-usbmp-base, jmcneill-audiomp3-base, jmcneill-audiomp3
Branch point for: yamt-pagecache, jmcneill-usbmp
Changes since 1.95: +9 -1 lines
Diff to previous 1.95 (colored) to selected 1.71 (colored)

Tell a pci(4) instance its subordinate PCI buses using a new member
in the pcibus_attach_args, pba_sub. pciN attaches to pba_bus itself.
If pba_bus < pba_sub, then [pba_bus + 1, pba_sub] are subordinate to
pba_bus.

On i386, make mainbus0 attach pci0 with pba_sub = 255 because all buses
1 and up must be subordinate to pci0.

XXX Deal with other architectures.

Revision 1.95 / (download) - annotate - [select for diffs], Wed Aug 24 20:27:36 2011 UTC (12 years, 7 months ago) by dyoung
Branch: MAIN
Changes since 1.94: +2 -1 lines
Diff to previous 1.94 (colored) to selected 1.71 (colored)

Add to pci_bus_devorder() an argument that tells the number of slots
available in the devs array.  Change the type of the devs array from
char to uint8_t.  Treat the return value of pci_bus_devorder() as the
number of slots that it filled.

Don't use the __PCI_BUS_DEVORDER #definition to configure the kernel
but let the linker do it.  Make pci_bus_devorder() available on all
architectures by adding a default implementation that will DTRT on
all architectures but hpcmips, the only architecture to #define
__PCI_BUS_DEVORDER.  On hpcmips, adapt the implementation to the new
calling convention.

XXX I can compile an hpcmips GENERIC kernel, but I don't have a
XXX hpcmips box to test it on.

Revision 1.94 / (download) - annotate - [select for diffs], Wed Jun 22 18:03:30 2011 UTC (12 years, 9 months ago) by matt
Branch: MAIN
Changes since 1.93: +21 -1 lines
Diff to previous 1.93 (colored) to selected 1.71 (colored)

Add inline accessors for pba_pc and pa_pc so that <machine/pci_machdep.h>
can use them in inline functions.

Revision 1.90.2.1 / (download) - annotate - [select for diffs], Mon Jun 6 09:08:25 2011 UTC (12 years, 10 months ago) by jruoho
Branch: jruoho-x86intr
Changes since 1.90: +18 -12 lines
Diff to previous 1.90 (colored) next main 1.91 (colored) to selected 1.71 (colored)

Sync with HEAD.

Revision 1.85.2.5 / (download) - annotate - [select for diffs], Tue May 31 03:04:51 2011 UTC (12 years, 10 months ago) by rmind
Branch: rmind-uvmplock
Changes since 1.85.2.4: +2 -2 lines
Diff to previous 1.85.2.4 (colored) next main 1.86 (colored) to selected 1.71 (colored)

sync with head

Revision 1.93 / (download) - annotate - [select for diffs], Tue May 17 17:34:54 2011 UTC (12 years, 11 months ago) by dyoung
Branch: MAIN
CVS Tags: rmind-uvmplock-nbase, rmind-uvmplock-base, cherry-xenmp-base, cherry-xenmp
Changes since 1.92: +3 -3 lines
Diff to previous 1.92 (colored) to selected 1.71 (colored)

PCI_FLAGS_IO_ENABLED and PCI_FLAGS_MEM_ENABLED changed their functional
role in NetBSD (drivers are no longer supposed to write these to
pa_flags) without changing name.  Correct that.

Rename PCI_FLAGS_IO_ENABLED to PCI_FLAGS_IO_OKAY and
PCI_FLAGS_MEM_ENABLED to PCI_FLAGS_MEM_OKAY, thus making their names
consistent with the other PCI flags and poisoning 3rd-party driver
sources that use the flags in the old bad way.

This patch produces no binary changes in this set of PCI kernels when
they are compiled w/o 'options DIAGNOSTIC' and w/ -V MKREPRO=yes:

algor P4032 P5064 P6032
alpha GENERIC
amd64 GENERIC XEN3_DOM0
arc GENERIC
atari HADES MILAN-PCIIDE
bebox GENERIC
cats GENERIC
cobalt GENERIC
evbarm-el ADI_BRH ARMADILLO9 CP3100 GEMINI GEMINI_MASTER GEMINI_SLAVE
evbarm-el GUMSTIX HDL_G IMX31LITE INTEGRATOR IQ31244 IQ80310 IQ80321
evbarm-el IXDP425 IXM1200 KUROBOX_PRO
evbarm-el LUBBOCK MARVELL_NAS NAPPI NSLU2 SHEEVAPLUG SMDK2800 TEAMASA_NPWR
evbarm-el TEAMASA_NPWR_FC TS7200 TWINTAIL ZAO425
evbmips-el AP30 DBAU1500 DBAU1550 MALTA MERAKI MTX-1 OMSAL400 RB153 WGT624V3
evbmips64-el XLSATX
evbppc EV64260 MPC8536DS MPC8548CDS OPENBLOCKS200 OPENBLOCKS266
evbppc OPENBLOCKS266_OPT P2020RDB PMPPC RB800 WALNUT
hp700 GENERIC
i386 ALL XEN3_DOM0 XEN3_DOMU
ibmnws GENERIC
iyonix GENERIC
landisk GENERIC
macppc GENERIC
mvmeppc GENERIC
netwinder GENERIC
ofppc GENERIC
prep GENERIC
sandpoint GENERIC
sbmips-el GENERIC
sgimips GENERIC32_IP2x GENERIC32_IP3x
sparc GENERIC_SUN4U KRUPS
sparc64 GENERIC

Revision 1.85.2.4 / (download) - annotate - [select for diffs], Thu Apr 21 01:42:00 2011 UTC (12 years, 11 months ago) by rmind
Branch: rmind-uvmplock
Changes since 1.85.2.3: +8 -9 lines
Diff to previous 1.85.2.3 (colored) to selected 1.71 (colored)

sync with head

Revision 1.92 / (download) - annotate - [select for diffs], Mon Apr 4 20:37:56 2011 UTC (13 years ago) by dyoung
Branch: MAIN
Changes since 1.91: +9 -10 lines
Diff to previous 1.91 (colored) to selected 1.71 (colored)

Neither pci_dma64_available(), pci_probe_device(), pci_mapreg_map(9),
pci_find_rom(), pci_intr_map(9), pci_enumerate_bus(), nor the match
predicate passed to pciide_compat_intr_establish() should ever modify
their pci_attach_args argument, so make their pci_attach_args arguments
const and deal with the fallout throughout the kernel.

For the most part, these changes add a 'const' where there was no
'const' before, however, some drivers and MD code used to modify
pci_attach_args.  Now those drivers either copy their pci_attach_args
and modify the copy, or refrain from modifying pci_attach_args:

Xen: according to Manuel Bouyer, writing to pci_attach_args in
    pci_intr_map() was a leftover from Xen 2.  Probably a bug.  I
    stopped writing it.  I have not tested this change.

siside(4): sis_hostbr_match() needlessly wrote to pci_attach_args.
    Probably a bug.  I use a temporary variable.  I have not tested this
    change.

slide(4): sl82c105_chip_map() overwrote the caller's pci_attach_args.
    Probably a bug.  Use a local pci_attach_args.  I have not tested
    this change.

viaide(4): via_sata_chip_map() and via_sata_chip_map_new() overwrote the
    caller's pci_attach_args.  Probably a bug.  Make a local copy of the
    caller's pci_attach_args and modify the copy.  I have not tested
    this change.

While I'm here, make pci_mapreg_submap() static.

With these changes in place, I have tested the compilation of these
kernels:

alpha GENERIC
amd64 GENERIC XEN3_DOM0
arc GENERIC
atari HADES MILAN-PCIIDE
bebox GENERIC
cats GENERIC
cobalt GENERIC
evbarm-eb NSLU2
evbarm-el ADI_BRH ARMADILLO9 CP3100 GEMINI GEMINI_MASTER GEMINI_SLAVE GUMSTIX
	HDL_G IMX31LITE INTEGRATOR IQ31244 IQ80310 IQ80321 IXDP425 IXM1200
	KUROBOX_PRO LUBBOCK MARVELL_NAS NAPPI SHEEVAPLUG SMDK2800 TEAMASA_NPWR
	TEAMASA_NPWR_FC TS7200 TWINTAIL ZAO425
evbmips-el AP30 DBAU1500 DBAU1550 MALTA MERAKI MTX-1 OMSAL400 RB153 WGT624V3
evbmips64-el XLSATX
evbppc EV64260 MPC8536DS MPC8548CDS OPENBLOCKS200 OPENBLOCKS266
	OPENBLOCKS266_OPT P2020RDB PMPPC RB800 WALNUT
hp700 GENERIC
i386 ALL XEN3_DOM0 XEN3_DOMU
ibmnws GENERIC
macppc GENERIC
mvmeppc GENERIC
netwinder GENERIC
ofppc GENERIC
prep GENERIC
sandpoint GENERIC
sgimips GENERIC32_IP2x
sparc GENERIC_SUN4U KRUPS
sparc64 GENERIC

As of Sun Apr 3 15:26:26 CDT 2011, I could not compile these kernels
with or without my patches in place:

### evbmips-el GDIUM

nbmake: nbmake: don't know how to make /home/dyoung/pristine-nbsd/src/sys/arch/mips/mips/softintr.c. Stop

### evbarm-el MPCSA_GENERIC
src/sys/arch/evbarm/conf/MPCSA_GENERIC:318: ds1672rtc*: unknown device `ds1672rtc'

### ia64 GENERIC

/tmp/genassym.28085/assym.c: In function 'f111':
/tmp/genassym.28085/assym.c:67: error: invalid application of 'sizeof' to incomplete type 'struct pcb'
/tmp/genassym.28085/assym.c:76: error: dereferencing pointer to incomplete type

### sgimips GENERIC32_IP3x

crmfb.o: In function `crmfb_attach':
crmfb.c:(.text+0x2304): undefined reference to `ddc_read_edid'
crmfb.c:(.text+0x2304): relocation truncated to fit: R_MIPS_26 against `ddc_read_edid'
crmfb.c:(.text+0x234c): undefined reference to `edid_parse'
crmfb.c:(.text+0x234c): relocation truncated to fit: R_MIPS_26 against `edid_parse'
crmfb.c:(.text+0x2354): undefined reference to `edid_print'
crmfb.c:(.text+0x2354): relocation truncated to fit: R_MIPS_26 against `edid_print'

Revision 1.85.2.3 / (download) - annotate - [select for diffs], Sat Mar 5 20:53:56 2011 UTC (13 years, 1 month ago) by rmind
Branch: rmind-uvmplock
Changes since 1.85.2.2: +8 -1 lines
Diff to previous 1.85.2.2 (colored) to selected 1.71 (colored)

sync with head

Revision 1.90.4.1 / (download) - annotate - [select for diffs], Thu Feb 17 12:00:14 2011 UTC (13 years, 2 months ago) by bouyer
Branch: bouyer-quota2
Changes since 1.90: +8 -1 lines
Diff to previous 1.90 (colored) next main 1.91 (colored) to selected 1.71 (colored)

Sync with HEAD

Revision 1.91 / (download) - annotate - [select for diffs], Thu Feb 10 12:37:58 2011 UTC (13 years, 2 months ago) by jmcneill
Branch: MAIN
CVS Tags: bouyer-quota2-nbase, bouyer-quota2-base
Changes since 1.90: +8 -1 lines
Diff to previous 1.90 (colored) to selected 1.71 (colored)

pcimmap: if the requested page is marked prefetchable in a child device's
BAR, pass the BUS_SPACE_MAP_PREFETCHABLE flag down to bus_space_mmap

Revision 1.83.18.1 / (download) - annotate - [select for diffs], Fri Jan 7 02:26:15 2011 UTC (13 years, 3 months ago) by matt
Branch: matt-nb5-pq3
Changes since 1.83: +5 -1 lines
Diff to previous 1.83 (colored) next main 1.84 (colored) to selected 1.71 (colored)

Add/define some MSI support

Revision 1.83.14.2 / (download) - annotate - [select for diffs], Tue Aug 17 06:46:33 2010 UTC (13 years, 8 months ago) by uebayasi
Branch: uebayasi-xip
Changes since 1.83.14.1: +2 -3 lines
Diff to previous 1.83.14.1 (colored) to branchpoint 1.83 (colored) next main 1.84 (colored) to selected 1.71 (colored)

Sync with HEAD.

Revision 1.80.4.4 / (download) - annotate - [select for diffs], Wed Aug 11 22:54:04 2010 UTC (13 years, 8 months ago) by yamt
Branch: yamt-nfs-mp
Changes since 1.80.4.3: +42 -4 lines
Diff to previous 1.80.4.3 (colored) to branchpoint 1.80 (colored) next main 1.81 (colored) to selected 1.71 (colored)

sync with head.

Revision 1.85.2.2 / (download) - annotate - [select for diffs], Sat Jul 3 01:19:40 2010 UTC (13 years, 9 months ago) by rmind
Branch: rmind-uvmplock
Changes since 1.85.2.1: +2 -1 lines
Diff to previous 1.85.2.1 (colored) to selected 1.71 (colored)

sync with head

Revision 1.90 / (download) - annotate - [select for diffs], Wed Jun 9 02:39:32 2010 UTC (13 years, 10 months ago) by mrg
Branch: MAIN
CVS Tags: yamt-nfs-mp-base11, yamt-nfs-mp-base10, uebayasi-xip-base4, uebayasi-xip-base3, uebayasi-xip-base2, matt-mips64-premerge-20101231, jruoho-x86intr-base
Branch point for: jruoho-x86intr, bouyer-quota2
Changes since 1.89: +2 -1 lines
Diff to previous 1.89 (colored) to selected 1.71 (colored)

declare 'struct pci_attach_args' before it is used.  fixes ia64 build.

Revision 1.85.2.1 / (download) - annotate - [select for diffs], Sun May 30 05:17:39 2010 UTC (13 years, 10 months ago) by rmind
Branch: rmind-uvmplock
Changes since 1.85: +37 -4 lines
Diff to previous 1.85 (colored) to selected 1.71 (colored)

sync with head

Revision 1.89 / (download) - annotate - [select for diffs], Thu May 27 05:53:35 2010 UTC (13 years, 10 months ago) by pgoyette
Branch: MAIN
Changes since 1.88: +2 -11 lines
Diff to previous 1.88 (colored) to selected 1.71 (colored)

Extract pci_verbose interface definitions into their own header file so
we don't need to include pcivar.h in the module.  pcivar.h tries to pull
in machine/pci_machdep.h which doesn't exist on all machine/architecture
combos.  Keeping track and building the module only for those that work
would have been a maintenance headache;  this change allows us to build
the module on all systems, regardless of whether the system has pci
support or not.

Revision 1.88 / (download) - annotate - [select for diffs], Tue May 25 08:35:45 2010 UTC (13 years, 10 months ago) by pgoyette
Branch: MAIN
Changes since 1.87: +5 -5 lines
Diff to previous 1.87 (colored) to selected 1.71 (colored)

Rework the pciverbose module dispatch vectors to avoid renaming the
externally-visible entrypoint name.  Also this avoids a potential
need to bump kernel version.

Requested by dyoung@ and mrg@

Revision 1.87 / (download) - annotate - [select for diffs], Mon May 24 20:29:41 2010 UTC (13 years, 10 months ago) by pgoyette
Branch: MAIN
Changes since 1.86: +8 -1 lines
Diff to previous 1.86 (colored) to selected 1.71 (colored)

Extract the vendor/product tables and related access routines into a
separate kernel module.  Update pci bus attach routine to load the
module (if available) when we're about to start scanning the bus, and
unload the module after the scan is finished.

On architectures which support loading of modules by the boot loader,
the 'pciverbose' module can be loaded and executed without needing to
rebuild the kernel.  On all architectures, using 'options PCIVERBOSE'
in the kernel configuration file will create a 'builtin' module which
is functionally equivalent to previous behavior.

XXX Although not nearly as large as the vendor and product tables,
XXX the PCI class and subclass tables might also be offloaded into
XXX the module at a future time.

XXX Cardbus (and possibly other) drivers should also be modified to
XXX load the module before scanning/attaching devices.

Revision 1.83.14.1 / (download) - annotate - [select for diffs], Fri Apr 30 14:43:43 2010 UTC (13 years, 11 months ago) by uebayasi
Branch: uebayasi-xip
Changes since 1.83: +40 -2 lines
Diff to previous 1.83 (colored) to selected 1.71 (colored)

Sync with HEAD.

Revision 1.86 / (download) - annotate - [select for diffs], Wed Apr 28 20:33:52 2010 UTC (13 years, 11 months ago) by dyoung
Branch: MAIN
CVS Tags: uebayasi-xip-base1
Changes since 1.85: +36 -1 lines
Diff to previous 1.85 (colored) to selected 1.71 (colored)

Add data types, function prototypes, and stub implementations
for pci_chipset_tag_create() and pci_chipset_tag_destroy().  On
architectures that support it, an MI PCI bus driver can override the
architecture's default pci(9) and pci_intr(9) implementation.

Coming up next: documentation.
After that: x86 implementation.
Last but not least: make cbb(4) use MI PCI overrides.

Revision 1.85 / (download) - annotate - [select for diffs], Fri Mar 12 21:55:05 2010 UTC (14 years, 1 month ago) by matt
Branch: MAIN
Branch point for: rmind-uvmplock
Changes since 1.84: +5 -1 lines
Diff to previous 1.84 (colored) to selected 1.71 (colored)

Add placeholdr flags indicating that the bus has MSI/MSI-X support.

Revision 1.80.4.3 / (download) - annotate - [select for diffs], Thu Mar 11 15:03:58 2010 UTC (14 years, 1 month ago) by yamt
Branch: yamt-nfs-mp
Changes since 1.80.4.2: +1 -2 lines
Diff to previous 1.80.4.2 (colored) to branchpoint 1.80 (colored) to selected 1.71 (colored)

sync with head

Revision 1.84 / (download) - annotate - [select for diffs], Tue Feb 23 19:28:00 2010 UTC (14 years, 1 month ago) by dyoung
Branch: MAIN
CVS Tags: yamt-nfs-mp-base9
Changes since 1.83: +1 -2 lines
Diff to previous 1.83 (colored) to selected 1.71 (colored)

Remove unused functions pci_disable_retry() and cardbus_disable_retry().

Revision 1.80.4.2 / (download) - annotate - [select for diffs], Mon May 4 08:13:01 2009 UTC (14 years, 11 months ago) by yamt
Branch: yamt-nfs-mp
Changes since 1.80.4.1: +14 -2 lines
Diff to previous 1.80.4.1 (colored) to branchpoint 1.80 (colored) to selected 1.71 (colored)

sync with head.

Revision 1.82.4.1 / (download) - annotate - [select for diffs], Sun Oct 19 22:16:40 2008 UTC (15 years, 5 months ago) by haad
Branch: haad-dm
Changes since 1.82: +4 -1 lines
Diff to previous 1.82 (colored) next main 1.83 (colored) to selected 1.71 (colored)

Sync with HEAD.

Revision 1.77.10.3 / (download) - annotate - [select for diffs], Sun Sep 28 10:40:28 2008 UTC (15 years, 6 months ago) by mjf
Branch: mjf-devfs2
Changes since 1.77.10.2: +3 -0 lines
Diff to previous 1.77.10.2 (colored) to branchpoint 1.77 (colored) next main 1.78 (colored) to selected 1.71 (colored)

Sync with HEAD.

Revision 1.81.2.2 / (download) - annotate - [select for diffs], Thu Sep 18 04:35:08 2008 UTC (15 years, 7 months ago) by wrstuden
Branch: wrstuden-revivesa
Changes since 1.81.2.1: +4 -1 lines
Diff to previous 1.81.2.1 (colored) to branchpoint 1.81 (colored) next main 1.82 (colored) to selected 1.71 (colored)

Sync with wrstuden-revivesa-base-2.

Revision 1.82.2.1 / (download) - annotate - [select for diffs], Mon Jul 28 14:37:27 2008 UTC (15 years, 8 months ago) by simonb
Branch: simonb-wapbl
Changes since 1.82: +4 -1 lines
Diff to previous 1.82 (colored) next main 1.83 (colored) to selected 1.71 (colored)

Sync with head.

Revision 1.83 / (download) - annotate - [select for diffs], Tue Jul 22 04:52:19 2008 UTC (15 years, 8 months ago) by bjs
Branch: MAIN
CVS Tags: yamt-nfs-mp-base8, yamt-nfs-mp-base7, yamt-nfs-mp-base6, yamt-nfs-mp-base5, yamt-nfs-mp-base4, yamt-nfs-mp-base3, wrstuden-revivesa-base-4, wrstuden-revivesa-base-3, wrstuden-revivesa-base-2, uebayasi-xip-base, simonb-wapbl-nbase, simonb-wapbl-base, nick-hppapmap-base4, nick-hppapmap-base3, nick-hppapmap-base2, nick-hppapmap-base, nick-hppapmap, netbsd-5-base, netbsd-5-2-RELEASE, netbsd-5-2-RC1, netbsd-5-2-3-RELEASE, netbsd-5-2-2-RELEASE, netbsd-5-2-1-RELEASE, netbsd-5-2, netbsd-5-1-RELEASE, netbsd-5-1-RC4, netbsd-5-1-RC3, netbsd-5-1-RC2, netbsd-5-1-RC1, netbsd-5-1-5-RELEASE, netbsd-5-1-4-RELEASE, netbsd-5-1-3-RELEASE, netbsd-5-1-2-RELEASE, netbsd-5-1-1-RELEASE, netbsd-5-1, netbsd-5-0-RELEASE, netbsd-5-0-RC4, netbsd-5-0-RC3, netbsd-5-0-RC2, netbsd-5-0-RC1, netbsd-5-0-2-RELEASE, netbsd-5-0-1-RELEASE, netbsd-5-0, netbsd-5, mjf-devfs2-base, matt-premerge-20091211, matt-nb5-pq3-base, matt-nb5-mips64-u2-k2-k4-k7-k8-k9, matt-nb5-mips64-u1-k1-k5, matt-nb5-mips64-premerge-20101231, matt-nb5-mips64-premerge-20091211, matt-nb5-mips64-k15, matt-nb4-mips64-k7-u2a-k9b, matt-mips64-base2, jymxensuspend-base, jym-xensuspend-nbase, jym-xensuspend-base, jym-xensuspend, haad-nbase2, haad-dm-base2, haad-dm-base1, haad-dm-base, ad-audiomp2-base, ad-audiomp2
Branch point for: uebayasi-xip, matt-nb5-pq3, matt-nb5-mips64
Changes since 1.82: +4 -1 lines
Diff to previous 1.82 (colored) to selected 1.71 (colored)

Add pci_mapreg_submap():  This function is pci_mapreg_map() with two
additional arguments, offset and maxsize.  This new functionality
eases handling certain tasks within the direct rendering manager, though
I hope others will also find it useful.

pci_mapreg_map() is now merely a wrapper around pci_mapreg_submap();
the latter contains all of the code from the former.

ok christos@

Revision 1.81.2.1 / (download) - annotate - [select for diffs], Mon Jun 23 04:31:12 2008 UTC (15 years, 9 months ago) by wrstuden
Branch: wrstuden-revivesa
Changes since 1.81: +11 -2 lines
Diff to previous 1.81 (colored) to selected 1.71 (colored)

Sync w/ -current. 34 merge conflicts to follow.

Revision 1.80.2.2 / (download) - annotate - [select for diffs], Wed Jun 4 02:05:14 2008 UTC (15 years, 10 months ago) by yamt
Branch: yamt-pf42
Changes since 1.80.2.1: +11 -2 lines
Diff to previous 1.80.2.1 (colored) to branchpoint 1.80 (colored) next main 1.81 (colored) to selected 1.71 (colored)

sync with head

Revision 1.77.10.2 / (download) - annotate - [select for diffs], Mon Jun 2 13:23:43 2008 UTC (15 years, 10 months ago) by mjf
Branch: mjf-devfs2
Changes since 1.77.10.1: +28 -5 lines
Diff to previous 1.77.10.1 (colored) to branchpoint 1.77 (colored) to selected 1.71 (colored)

Sync with HEAD.

Revision 1.82 / (download) - annotate - [select for diffs], Fri May 30 19:26:35 2008 UTC (15 years, 10 months ago) by ad
Branch: MAIN
CVS Tags: yamt-pf42-base4, yamt-pf42-base3, wrstuden-revivesa-base-1, wrstuden-revivesa-base
Branch point for: simonb-wapbl, haad-dm
Changes since 1.81: +11 -2 lines
Diff to previous 1.81 (colored) to selected 1.71 (colored)

pci_intr_setattr(), allows PCI interrupts to be marked MPSAFE on x86, and
other platforms if the code is added.

pci_intr_map(...)
pci_intr_setattr(pc, ih, PCI_INTR_MPSAFE, 1);
pci_intr_establish(...)

Revision 1.80.2.1 / (download) - annotate - [select for diffs], Sun May 18 12:34:22 2008 UTC (15 years, 11 months ago) by yamt
Branch: yamt-pf42
Changes since 1.80: +13 -6 lines
Diff to previous 1.80 (colored) to selected 1.71 (colored)

sync with head.

Revision 1.80.4.1 / (download) - annotate - [select for diffs], Fri May 16 02:24:45 2008 UTC (15 years, 11 months ago) by yamt
Branch: yamt-nfs-mp
Changes since 1.80: +13 -6 lines
Diff to previous 1.80 (colored) to selected 1.71 (colored)

sync with head.

Revision 1.81 / (download) - annotate - [select for diffs], Mon May 5 20:14:30 2008 UTC (15 years, 11 months ago) by dyoung
Branch: MAIN
CVS Tags: yamt-pf42-base2, yamt-nfs-mp-base2, hpcarm-cleanup-nbase
Branch point for: wrstuden-revivesa
Changes since 1.80: +13 -6 lines
Diff to previous 1.80 (colored) to selected 1.71 (colored)

Restore PCI devices to a state that is closer to the state that
NetBSD finds them in: save and restore power management state
(D0..D3) and PCI Configuration Registers 0x0 through 0x40 during
device attachment and detachment, respectively.  Among other things,
this will fix sip(4) detachment and re-attachment.

Revision 1.80 / (download) - annotate - [select for diffs], Wed Apr 9 17:01:53 2008 UTC (16 years ago) by dyoung
Branch: MAIN
CVS Tags: yamt-pf42-baseX, yamt-pf42-base, yamt-nfs-mp-base
Branch point for: yamt-pf42, yamt-nfs-mp
Changes since 1.79: +8 -1 lines
Diff to previous 1.79 (colored) to selected 1.71 (colored)

Export some PCI autoconf routines for use by elansc(4), for example.

Revision 1.77.10.1 / (download) - annotate - [select for diffs], Thu Apr 3 12:42:53 2008 UTC (16 years ago) by mjf
Branch: mjf-devfs2
Changes since 1.77: +6 -6 lines
Diff to previous 1.77 (colored) to selected 1.71 (colored)

Sync with HEAD.

Revision 1.69.6.7 / (download) - annotate - [select for diffs], Mon Mar 24 09:38:51 2008 UTC (16 years ago) by yamt
Branch: yamt-lazymbuf
Changes since 1.69.6.6: +6 -6 lines
Diff to previous 1.69.6.6 (colored) to branchpoint 1.69 (colored) next main 1.70 (colored) to selected 1.71 (colored)

sync with head.

Revision 1.77.6.1 / (download) - annotate - [select for diffs], Mon Mar 24 07:15:49 2008 UTC (16 years ago) by keiichi
Branch: keiichi-mipv6
Changes since 1.77: +4 -4 lines
Diff to previous 1.77 (colored) next main 1.78 (colored) to selected 1.71 (colored)

sync with head.

Revision 1.79 / (download) - annotate - [select for diffs], Sun Mar 23 16:40:12 2008 UTC (16 years ago) by cube
Branch: MAIN
CVS Tags: yamt-lazymbuf-base15, yamt-lazymbuf-base14, ad-socklock-base1
Changes since 1.78: +3 -3 lines
Diff to previous 1.78 (colored) to selected 1.71 (colored)

Split device_t and softc for pci(4).

Revision 1.74.16.3 / (download) - annotate - [select for diffs], Sun Mar 23 02:04:49 2008 UTC (16 years ago) by matt
Branch: matt-armv6
Changes since 1.74.16.2: +4 -4 lines
Diff to previous 1.74.16.2 (colored) to branchpoint 1.74 (colored) next main 1.75 (colored) to selected 1.71 (colored)

sync with HEAD

Revision 1.78 / (download) - annotate - [select for diffs], Fri Mar 21 07:47:43 2008 UTC (16 years ago) by dyoung
Branch: MAIN
CVS Tags: matt-armv6-nbase, keiichi-mipv6-nbase, keiichi-mipv6-base
Changes since 1.77: +4 -4 lines
Diff to previous 1.77 (colored) to selected 1.71 (colored)

pci_activate() expects for its void * argument to be a device_t,
so change the type of the argument to device_t.  Update each use
of pci_activate().

Use device_t and accessors.  Use aprint_*_dev().

Revision 1.69.6.6 / (download) - annotate - [select for diffs], Mon Jan 21 09:44:13 2008 UTC (16 years, 2 months ago) by yamt
Branch: yamt-lazymbuf
Changes since 1.69.6.5: +2 -2 lines
Diff to previous 1.69.6.5 (colored) to branchpoint 1.69 (colored) to selected 1.71 (colored)

sync with head

Revision 1.74.16.2 / (download) - annotate - [select for diffs], Wed Jan 9 01:54:00 2008 UTC (16 years, 3 months ago) by matt
Branch: matt-armv6
Changes since 1.74.16.1: +3 -2 lines
Diff to previous 1.74.16.1 (colored) to branchpoint 1.74 (colored) to selected 1.71 (colored)

sync with HEAD

Revision 1.75.2.2 / (download) - annotate - [select for diffs], Thu Dec 27 00:45:24 2007 UTC (16 years, 3 months ago) by mjf
Branch: mjf-devfs
Changes since 1.75.2.1: +2 -2 lines
Diff to previous 1.75.2.1 (colored) to branchpoint 1.75 (colored) next main 1.76 (colored) to selected 1.71 (colored)

Sync with HEAD.

Revision 1.76.2.1 / (download) - annotate - [select for diffs], Wed Dec 26 19:47:06 2007 UTC (16 years, 3 months ago) by ad
Branch: vmlocking2
Changes since 1.76: +2 -2 lines
Diff to previous 1.76 (colored) next main 1.77 (colored) to selected 1.71 (colored)

Sync with head.

Revision 1.76.4.1 / (download) - annotate - [select for diffs], Tue Dec 11 15:32:23 2007 UTC (16 years, 4 months ago) by yamt
Branch: yamt-kmem
Changes since 1.76: +2 -2 lines
Diff to previous 1.76 (colored) next main 1.77 (colored) to selected 1.71 (colored)

sync with head.

Revision 1.77 / (download) - annotate - [select for diffs], Sun Dec 9 20:28:12 2007 UTC (16 years, 4 months ago) by jmcneill
Branch: MAIN
CVS Tags: yamt-kmem-base3, yamt-kmem-base2, vmlocking2-base3, nick-net80211-sync-base, nick-net80211-sync, mjf-devfs-base, matt-armv6-base, hpcarm-cleanup-base, cube-autoconf-base, cube-autoconf, bouyer-xeni386-nbase, bouyer-xeni386-merge1, bouyer-xeni386-base, bouyer-xeni386
Branch point for: mjf-devfs2, keiichi-mipv6
Changes since 1.76: +2 -2 lines
Diff to previous 1.76 (colored) to selected 1.71 (colored)

Merge jmcneill-pm branch.

Revision 1.74.14.7 / (download) - annotate - [select for diffs], Sat Dec 8 16:21:31 2007 UTC (16 years, 4 months ago) by jmcneill
Branch: jmcneill-pm
Changes since 1.74.14.6: +2 -2 lines
Diff to previous 1.74.14.6 (colored) to branchpoint 1.74 (colored) next main 1.75 (colored) to selected 1.71 (colored)

Rename pnp(9) -> pmf(9), as requested by many.

Revision 1.74.14.6 / (download) - annotate - [select for diffs], Tue Nov 20 22:49:52 2007 UTC (16 years, 4 months ago) by joerg
Branch: jmcneill-pm
Changes since 1.74.14.5: +1 -3 lines
Diff to previous 1.74.14.5 (colored) to branchpoint 1.74 (colored) to selected 1.71 (colored)

GC struct ifnet.

Revision 1.75.2.1 / (download) - annotate - [select for diffs], Mon Nov 19 00:48:18 2007 UTC (16 years, 5 months ago) by mjf
Branch: mjf-devfs
Changes since 1.75: +2 -1 lines
Diff to previous 1.75 (colored) to selected 1.71 (colored)

Sync with HEAD.

Revision 1.69.6.5 / (download) - annotate - [select for diffs], Thu Nov 15 11:44:26 2007 UTC (16 years, 5 months ago) by yamt
Branch: yamt-lazymbuf
Changes since 1.69.6.4: +2 -1 lines
Diff to previous 1.69.6.4 (colored) to branchpoint 1.69 (colored) to selected 1.71 (colored)

sync with head.

Revision 1.74.20.2 / (download) - annotate - [select for diffs], Tue Nov 13 16:01:32 2007 UTC (16 years, 5 months ago) by bouyer
Branch: bouyer-xenamd64
Changes since 1.74.20.1: +1 -0 lines
Diff to previous 1.74.20.1 (colored) to branchpoint 1.74 (colored) next main 1.75 (colored) to selected 1.71 (colored)

Sync with HEAD

Revision 1.76 / (download) - annotate - [select for diffs], Mon Nov 12 19:54:36 2007 UTC (16 years, 5 months ago) by joerg
Branch: MAIN
CVS Tags: yamt-kmem-base, vmlocking2-base2, vmlocking2-base1, vmlocking-nbase, reinoud-bufcleanup-nbase, reinoud-bufcleanup-base, jmcneill-pm-base, bouyer-xenamd64-base2, bouyer-xenamd64-base
Branch point for: yamt-kmem, vmlocking2
Changes since 1.75: +2 -1 lines
Diff to previous 1.75 (colored) to selected 1.71 (colored)

Merge pci_disable_retry function from jmcneill-pm as it is found in
various drivers.

Revision 1.74.16.1 / (download) - annotate - [select for diffs], Tue Nov 6 23:29:28 2007 UTC (16 years, 5 months ago) by matt
Branch: matt-armv6
CVS Tags: matt-armv6-prevmlocking
Changes since 1.74: +2 -2 lines
Diff to previous 1.74 (colored) to selected 1.71 (colored)

sync with HEAD

Revision 1.74.14.5 / (download) - annotate - [select for diffs], Tue Nov 6 14:27:28 2007 UTC (16 years, 5 months ago) by joerg
Branch: jmcneill-pm
Changes since 1.74.14.4: +1 -20 lines
Diff to previous 1.74.14.4 (colored) to branchpoint 1.74 (colored) to selected 1.71 (colored)

Refactor PNP API:
- Make suspend/resume directly a device functionality. It consists of
  three layers (class logic, device logic, bus logic), all of them being
  optional. This replaces D0/D3 transitions.
- device_is_active returns true if the device was not disabled and was
  not suspended (even partially), device_is_enabled returns true if the
  device was enabled.
- Change pnp_global_transition into pnp_system_suspend and
  pnp_system_resume. Before running any suspend/resume handlers, check
  that all currently attached devices support power management and bail
  out otherwise. The latter is not done for the shutdown/panic case.
- Make the former bus-specific generic network handlers a class handler.
- Make PNP message like volume up/down/toogle PNP events. Each device
  can register what events they are interested in and whether the handler
  should be global or not.
- Introduce device_active API for devices to mark themselve in use from
  either the system or the device. Use this to implement the idle handling
  for audio and input devices. This is intended to replace most ad-hoc
  watchdogs as well.
- Fix somes situations in which audio resume would lose mixer settings.
- Make USB host controllers better deal with suspend in the light of
  shared interrupts.
- Flush filesystem cache on suspend.
- Flush disk caches on suspend. Put ATA disks into standby on suspend as
  well.
- Adopt drivers to use the new PNP API.
- Fix a critical bug in the generic cardbus layer that made D0->D3
  break.
- Fix ral(4) to set if_stop.
- Convert cbb(4) to the new PNP API.
- Apply the PCI Express SCI fix on resume again.

Revision 1.69.6.4 / (download) - annotate - [select for diffs], Sat Oct 27 11:33:27 2007 UTC (16 years, 5 months ago) by yamt
Branch: yamt-lazymbuf
Changes since 1.69.6.3: +2 -2 lines
Diff to previous 1.69.6.3 (colored) to branchpoint 1.69 (colored) to selected 1.71 (colored)

sync with head.

Revision 1.74.14.4 / (download) - annotate - [select for diffs], Fri Oct 26 15:46:49 2007 UTC (16 years, 5 months ago) by joerg
Branch: jmcneill-pm
Changes since 1.74.14.3: +2 -2 lines
Diff to previous 1.74.14.3 (colored) to branchpoint 1.74 (colored) to selected 1.71 (colored)

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.

Revision 1.74.20.1 / (download) - annotate - [select for diffs], Thu Oct 25 22:39:17 2007 UTC (16 years, 5 months ago) by bouyer
Branch: bouyer-xenamd64
Changes since 1.74: +2 -2 lines
Diff to previous 1.74 (colored) to selected 1.71 (colored)

Sync with HEAD.

Revision 1.74.2.1 / (download) - annotate - [select for diffs], Tue Oct 23 20:09:16 2007 UTC (16 years, 5 months ago) by ad
Branch: vmlocking
Changes since 1.74: +2 -2 lines
Diff to previous 1.74 (colored) next main 1.75 (colored) to selected 1.71 (colored)

Sync with head.

Revision 1.75 / (download) - annotate - [select for diffs], Fri Oct 19 12:00:54 2007 UTC (16 years, 6 months ago) by ad
Branch: MAIN
CVS Tags: jmcneill-base
Branch point for: mjf-devfs
Changes since 1.74: +2 -2 lines
Diff to previous 1.74 (colored) to selected 1.71 (colored)

machine/{bus,cpu,intr}.h -> sys/{bus,cpu,intr}.h

Revision 1.74.14.3 / (download) - annotate - [select for diffs], Mon Oct 1 05:37:54 2007 UTC (16 years, 6 months ago) by joerg
Branch: jmcneill-pm
Changes since 1.74.14.2: +16 -6 lines
Diff to previous 1.74.14.2 (colored) to branchpoint 1.74 (colored) to selected 1.71 (colored)

Extend device API by device_power_private and device_power_set_private.
The latter is a temporary mean until the pnp_register API itself is
overhault. This functions allow a generic power handler to store its
state independent of the driver.

Use this and revamp the PCI power handling. Pretty much all PCI devices
had power handlers that did the same thing, generalize this in
pci_generic_power_register/deregister and the handler. This interface
offers callbacks for the drivers to save and restore state on
transistions. After a long discussion with jmcneill@ it was considered
to be powerful enough until evidence is shown that devices can handle
D1/D2 with less code and higher speed than without the full
save/restore. The generic code is carefully written to handle device
without PCI-PM support and ensure that the correct registers are written
to when D3 loses all state.

Reimplement the generic PCI network device handling on
top of PCI generic power handling.

Introduce pci_disable_retry as used and implemented locally at least by
ath(4) and iwi(4). Use it in this drivers to restore behaviour from
before the introduction of generic PCI network handling.

Convert all PCI drivers that were using pnp_register to the new
framework. The only exception is vga(4) as it is commonly used as
console device. Add a note therein that this should be fixed later.

Revision 1.69.6.3 / (download) - annotate - [select for diffs], Mon Sep 3 14:37:20 2007 UTC (16 years, 7 months ago) by yamt
Branch: yamt-lazymbuf
Changes since 1.69.6.2: +2 -2 lines
Diff to previous 1.69.6.2 (colored) to branchpoint 1.69 (colored) to selected 1.71 (colored)

sync with head.

Revision 1.74.14.2 / (download) - annotate - [select for diffs], Thu Aug 23 09:32:51 2007 UTC (16 years, 7 months ago) by joerg
Branch: jmcneill-pm
Changes since 1.74.14.1: +8 -1 lines
Diff to previous 1.74.14.1 (colored) to branchpoint 1.74 (colored) to selected 1.71 (colored)

Introduce pci_net_generic_power, which should be enough for most
network drivers and be a good foundation for C&P for the rest.

For iwi(4), don't reset the PCI retry register again, pci_conf_restore
should take care of that already.

For bge(4), add a NetBSD style if_stop.

Revision 1.74.14.1 / (download) - annotate - [select for diffs], Fri Aug 3 22:17:20 2007 UTC (16 years, 8 months ago) by jmcneill
Branch: jmcneill-pm
Changes since 1.74: +7 -2 lines
Diff to previous 1.74 (colored) to selected 1.71 (colored)

Pull in power management changes from private branch.

Revision 1.73.4.1 / (download) - annotate - [select for diffs], Mon Mar 12 05:55:26 2007 UTC (17 years, 1 month ago) by rmind
Branch: yamt-idlelwp
Changes since 1.73: +2 -2 lines
Diff to previous 1.73 (colored) next main 1.74 (colored) to selected 1.71 (colored)

Sync with HEAD.

Revision 1.74 / (download) - annotate - [select for diffs], Sun Mar 4 06:02:25 2007 UTC (17 years, 1 month ago) by christos
Branch: MAIN
CVS Tags: yamt-x86pmap-base4, yamt-x86pmap-base3, yamt-x86pmap-base2, yamt-x86pmap-base, yamt-x86pmap, yamt-idlelwp-base8, vmlocking-base, thorpej-atomic-base, thorpej-atomic, reinoud-bufcleanup, nick-csl-alignment-base5, nick-csl-alignment-base, nick-csl-alignment, mjf-ufs-trans-base, mjf-ufs-trans, matt-mips64-base, matt-mips64, hpcarm-cleanup
Branch point for: vmlocking, matt-armv6, jmcneill-pm, bouyer-xenamd64
Changes since 1.73: +2 -2 lines
Diff to previous 1.73 (colored) to selected 1.71 (colored)

Kill caddr_t; there will be some MI fallout, but it will be fixed shortly.

Revision 1.69.6.2 / (download) - annotate - [select for diffs], Sat Dec 30 20:48:48 2006 UTC (17 years, 3 months ago) by yamt
Branch: yamt-lazymbuf
Changes since 1.69.6.1: +2 -1 lines
Diff to previous 1.69.6.1 (colored) to branchpoint 1.69 (colored) to selected 1.71 (colored)

sync with head.

Revision 1.72.4.1 / (download) - annotate - [select for diffs], Sat Nov 18 21:34:33 2006 UTC (17 years, 5 months ago) by ad
Branch: newlock2
Changes since 1.72: +2 -1 lines
Diff to previous 1.72 (colored) next main 1.73 (colored) to selected 1.71 (colored)

Sync with head.

Revision 1.72.6.1 / (download) - annotate - [select for diffs], Sun Oct 22 06:06:19 2006 UTC (17 years, 5 months ago) by yamt
Branch: yamt-splraiseipl
Changes since 1.72: +2 -1 lines
Diff to previous 1.72 (colored) next main 1.73 (colored) to selected 1.71 (colored)

sync with head

Revision 1.73 / (download) - annotate - [select for diffs], Mon Sep 25 23:09:42 2006 UTC (17 years, 6 months ago) by jmcneill
Branch: MAIN
CVS Tags: yamt-splraiseipl-base5, yamt-splraiseipl-base4, yamt-splraiseipl-base3, yamt-splraiseipl-base2, wrstuden-fixsa-newbase, wrstuden-fixsa-base-1, wrstuden-fixsa-base, wrstuden-fixsa, post-newlock2-merge, newlock2-nbase, newlock2-base, netbsd-4-base, netbsd-4-0-RELEASE, netbsd-4-0-RC5, netbsd-4-0-RC4, netbsd-4-0-RC3, netbsd-4-0-RC2, netbsd-4-0-RC1, netbsd-4-0-1-RELEASE, netbsd-4-0, netbsd-4, matt-nb4-arm-base, matt-nb4-arm, ad-audiomp-base, ad-audiomp
Branch point for: yamt-idlelwp
Changes since 1.72: +2 -1 lines
Diff to previous 1.72 (colored) to selected 1.71 (colored)

Create a PCI bus powerhook to handle setting PCI D# power state transitions
on suspend/standby/resume.

Revision 1.70.4.1 / (download) - annotate - [select for diffs], Sat Sep 9 02:52:19 2006 UTC (17 years, 7 months ago) by rpaulo
Branch: rpaulo-netinet-merge-pcb
Changes since 1.70: +9 -1 lines
Diff to previous 1.70 (colored) next main 1.71 (colored)

sync with head

Revision 1.71.10.1 / (download) - annotate - [select for diffs], Thu Jul 13 17:49:29 2006 UTC (17 years, 9 months ago) by gdamore
Branch: gdamore-uart
Changes since 1.71: +6 -1 lines
Diff to previous 1.71 (colored) next main 1.72 (colored)

Merge from HEAD.

Revision 1.71.2.1 / (download) - annotate - [select for diffs], Mon Jun 26 12:51:23 2006 UTC (17 years, 9 months ago) by yamt
Branch: yamt-pdpolicy
Changes since 1.71: +6 -1 lines
Diff to previous 1.71 (colored) next main 1.72 (colored)

sync with head.

Revision 1.69.6.1 / (download) - annotate - [select for diffs], Wed Jun 21 15:05:06 2006 UTC (17 years, 9 months ago) by yamt
Branch: yamt-lazymbuf
Changes since 1.69: +10 -2 lines
Diff to previous 1.69 (colored) to selected 1.71 (colored)

sync with head.

Revision 1.71.8.1 / (download) - annotate - [select for diffs], Mon Jun 19 04:01:37 2006 UTC (17 years, 10 months ago) by chap
Branch: chap-midi
Changes since 1.71: +6 -1 lines
Diff to previous 1.71 (colored) next main 1.72 (colored)

Sync with head.

Revision 1.72 / (download) - annotate - [select for diffs], Sat Jun 17 23:34:27 2006 UTC (17 years, 10 months ago) by christos
Branch: MAIN
CVS Tags: yamt-splraiseipl-base, yamt-pdpolicy-base9, yamt-pdpolicy-base8, yamt-pdpolicy-base7, yamt-pdpolicy-base6, rpaulo-netinet-merge-pcb-base, chap-midi-nbase, chap-midi-base, abandoned-netbsd-4-base, abandoned-netbsd-4
Branch point for: yamt-splraiseipl, newlock2
Changes since 1.71: +6 -1 lines
Diff to previous 1.71 (colored)

re-factor the pci powestate api. reviewed by gimpy

Revision 1.70.6.1 / (download) - annotate - [select for diffs], Sat Apr 22 11:39:15 2006 UTC (17 years, 11 months ago) by simonb
Branch: simonb-timecounters
CVS Tags: simonb-timcounters-final
Changes since 1.70: +4 -1 lines
Diff to previous 1.70 (colored) next main 1.71 (colored)

Sync with head.

Revision 1.71 / (download) - annotate - [selected], Wed Mar 1 18:53:40 2006 UTC (18 years, 1 month ago) by gdamore
Branch: MAIN
CVS Tags: yamt-pdpolicy-base5, yamt-pdpolicy-base4, yamt-pdpolicy-base3, yamt-pdpolicy-base2, yamt-pdpolicy-base, simonb-timecounters-base, peter-altq-base, peter-altq, gdamore-uart-base, elad-kernelauth-base, elad-kernelauth
Branch point for: yamt-pdpolicy, gdamore-uart, chap-midi
Changes since 1.70: +4 -1 lines
Diff to previous 1.70 (colored)

Add pci_find_rom() API as discussed on tech-kern.

Revision 1.70 / (download) - annotate - [select for diffs], Sun Dec 11 12:22:50 2005 UTC (18 years, 4 months ago) by christos
Branch: MAIN
CVS Tags: yamt-uio_vmspace-base5, yamt-uio_vmspace
Branch point for: simonb-timecounters, rpaulo-netinet-merge-pcb
Changes since 1.69: +2 -2 lines
Diff to previous 1.69 (colored) to selected 1.71 (colored)

merge ktrace-lwp.

Revision 1.67.4.1 / (download) - annotate - [select for diffs], Fri Apr 29 11:29:12 2005 UTC (18 years, 11 months ago) by kent
Branch: kent-audio2
Changes since 1.67: +25 -21 lines
Diff to previous 1.67 (colored) next main 1.68 (colored) to selected 1.71 (colored)

sync with -current

Revision 1.67.6.1 / (download) - annotate - [select for diffs], Sat Feb 12 18:17:48 2005 UTC (19 years, 2 months ago) by yamt
Branch: yamt-km
Changes since 1.67: +25 -21 lines
Diff to previous 1.67 (colored) next main 1.68 (colored) to selected 1.71 (colored)

sync with head.

Revision 1.58.2.7 / (download) - annotate - [select for diffs], Fri Feb 4 11:46:40 2005 UTC (19 years, 2 months ago) by skrll
Branch: ktrace-lwp
Changes since 1.58.2.6: +25 -21 lines
Diff to previous 1.58.2.6 (colored) next main 1.59 (colored) to selected 1.71 (colored)

Sync with HEAD.

Revision 1.69 / (download) - annotate - [select for diffs], Fri Feb 4 02:10:45 2005 UTC (19 years, 2 months ago) by perry
Branch: MAIN
CVS Tags: yamt-vop-base3, yamt-vop-base2, yamt-vop-base, yamt-vop, yamt-readahead-pervnode, yamt-readahead-perfile, yamt-readahead-base3, yamt-readahead-base2, yamt-readahead-base, yamt-readahead, yamt-km-base4, yamt-km-base3, yamt-km-base2, thorpej-vnode-attr-base, thorpej-vnode-attr, netbsd-3-base, netbsd-3-1-RELEASE, netbsd-3-1-RC4, netbsd-3-1-RC3, netbsd-3-1-RC2, netbsd-3-1-RC1, netbsd-3-1-1-RELEASE, netbsd-3-1, netbsd-3-0-RELEASE, netbsd-3-0-RC6, netbsd-3-0-RC5, netbsd-3-0-RC4, netbsd-3-0-RC3, netbsd-3-0-RC2, netbsd-3-0-RC1, netbsd-3-0-3-RELEASE, netbsd-3-0-2-RELEASE, netbsd-3-0-1-RELEASE, netbsd-3-0, netbsd-3, ktrace-lwp-base, kent-audio2-base
Branch point for: yamt-lazymbuf
Changes since 1.68: +19 -20 lines
Diff to previous 1.68 (colored) to selected 1.71 (colored)

de-__P

Revision 1.68 / (download) - annotate - [select for diffs], Wed Jan 26 21:49:00 2005 UTC (19 years, 2 months ago) by jmcneill
Branch: MAIN
Changes since 1.67: +7 -2 lines
Diff to previous 1.67 (colored) to selected 1.71 (colored)

Add support functions for capturing and restoring PCI configuration
registers for power management code.

Revision 1.58.2.6 / (download) - annotate - [select for diffs], Tue Sep 21 13:31:07 2004 UTC (19 years, 6 months ago) by skrll
Branch: ktrace-lwp
Changes since 1.58.2.5: +2 -2 lines
Diff to previous 1.58.2.5 (colored) to selected 1.71 (colored)

Fix the sync with head I botched.

Revision 1.58.2.5 / (download) - annotate - [select for diffs], Sat Sep 18 14:49:06 2004 UTC (19 years, 7 months ago) by skrll
Branch: ktrace-lwp
Changes since 1.58.2.4: +2 -17 lines
Diff to previous 1.58.2.4 (colored) to selected 1.71 (colored)

Sync with HEAD.

Revision 1.67 / (download) - annotate - [select for diffs], Mon Sep 13 12:22:53 2004 UTC (19 years, 7 months ago) by drochner
Branch: MAIN
CVS Tags: yamt-km-base, kent-audio1-beforemerge, kent-audio1-base, kent-audio1
Branch point for: yamt-km, kent-audio2
Changes since 1.66: +1 -16 lines
Diff to previous 1.66 (colored) to selected 1.71 (colored)

remove macros which just hide cfdata internals
(and are used at one place only)

Revision 1.58.2.4 / (download) - annotate - [select for diffs], Fri Sep 3 12:45:29 2004 UTC (19 years, 7 months ago) by skrll
Branch: ktrace-lwp
Changes since 1.58.2.3: +4 -2 lines
Diff to previous 1.58.2.3 (colored) to selected 1.71 (colored)

Sync with HEAD

Revision 1.66 / (download) - annotate - [select for diffs], Mon Aug 30 15:05:20 2004 UTC (19 years, 7 months ago) by drochner
Branch: MAIN
Changes since 1.65: +2 -2 lines
Diff to previous 1.65 (colored) to selected 1.71 (colored)

Phase out the use of a string as first "attach args" member to control
which bustype should be attached with a specific call to config_found()
(from a "mainbus" or a bus bridge).
Do it for isa/eisa/mca and pci/agp for now. These buses all attach to
an mi interface attribute "isabus", "eisabus" etc., and the autoconf
framework now allows to specify an interface attribute on config_found()
and config_search(), which limits the search of matching config data
to these which attach to that specific attribute.
So we basically have to call config_found_ia(..., "foobus", ...) where
such a bus is attached.
As a consequence, where a "mainbus" or alike also attaches other
devices (eg CPUs) which do not attach to a specific attribute yet,
we need at least pass an attribute name (different from "foobus") so
that the foo bus is not found at these places. This made some minor
changes necessary which are not obviously related to the mentioned buses.

Revision 1.65 / (download) - annotate - [select for diffs], Mon Aug 30 10:30:38 2004 UTC (19 years, 7 months ago) by drochner
Branch: MAIN
Changes since 1.64: +3 -1 lines
Diff to previous 1.64 (colored) to selected 1.71 (colored)

add centralized {eisa,isa,pci,agp,mca}busprint() functions which do
what tens of the bus' parents foo{...}bridge_print()s scattered around do

Revision 1.58.2.3 / (download) - annotate - [select for diffs], Wed Aug 25 06:58:06 2004 UTC (19 years, 7 months ago) by skrll
Branch: ktrace-lwp
Changes since 1.58.2.2: +4 -1 lines
Diff to previous 1.58.2.2 (colored) to selected 1.71 (colored)

Sync with HEAD.

Revision 1.64 / (download) - annotate - [select for diffs], Tue Aug 17 23:20:10 2004 UTC (19 years, 8 months ago) by drochner
Branch: MAIN
Changes since 1.63: +4 -1 lines
Diff to previous 1.63 (colored) to selected 1.71 (colored)

make PCI devices attachable/detachable (as far as the particular drivers
allow), and allow to rescan a bus selectively (ie only the device/
function I'm looking at)

Revision 1.58.2.2 / (download) - annotate - [select for diffs], Tue Aug 3 10:49:11 2004 UTC (19 years, 8 months ago) by skrll
Branch: ktrace-lwp
Changes since 1.58.2.1: +15 -7 lines
Diff to previous 1.58.2.1 (colored) to selected 1.71 (colored)

Sync with HEAD

Revision 1.63 / (download) - annotate - [select for diffs], Mon Aug 2 18:43:38 2004 UTC (19 years, 8 months ago) by mycroft
Branch: MAIN
Changes since 1.62: +3 -2 lines
Diff to previous 1.62 (colored) to selected 1.71 (colored)

For the PCIVERBOSE case, separate vendors and products into separate tables.
Eliminating redundant pointers in the tables saves nearly 20K (20% of the table
size).  In the process, add a pci_findproduct() and make that and
pci_findvendor() return a "const char *".

Revision 1.62 / (download) - annotate - [select for diffs], Thu Jul 29 16:51:01 2004 UTC (19 years, 8 months ago) by drochner
Branch: MAIN
Changes since 1.61: +1 -3 lines
Diff to previous 1.61 (colored) to selected 1.71 (colored)

make the "generic" PCI bus enumeration code the standard case which
gets used if nothing else is defined in MD headers,
introduce a "PCI_MACHDEP_ENUMERATE_BUS" CPP definition which can
be used by MD headers (just 1 port atm) to plug in special code

Revision 1.61 / (download) - annotate - [select for diffs], Sat May 8 23:41:40 2004 UTC (19 years, 11 months ago) by christos
Branch: MAIN
Changes since 1.60: +2 -3 lines
Diff to previous 1.60 (colored) to selected 1.71 (colored)

GC pci_{g,s}et_powerstate into pci_powerstate(). Idea from mycroft and gimpy.
Nothing uses them yet.

Revision 1.60 / (download) - annotate - [select for diffs], Fri Apr 23 21:13:07 2004 UTC (19 years, 11 months ago) by itojun
Branch: MAIN
Changes since 1.59: +2 -2 lines
Diff to previous 1.59 (colored) to selected 1.71 (colored)

pass string length (= boundary info) to pci_devinfo so that we do not run over
the end of memory region

Revision 1.51.2.1 / (download) - annotate - [select for diffs], Fri Aug 15 12:45:59 2003 UTC (20 years, 8 months ago) by tron
Branch: netbsd-1-6
CVS Tags: netbsd-1-6-PATCH002-RELEASE, netbsd-1-6-PATCH002-RC4, netbsd-1-6-PATCH002-RC3, netbsd-1-6-PATCH002-RC2, netbsd-1-6-PATCH002-RC1, netbsd-1-6-PATCH002
Changes since 1.51: +11 -1 lines
Diff to previous 1.51 (colored) next main 1.52 (colored) to selected 1.71 (colored)

Pull up revision 1.59 (requested by itojun in ticket #1412):
- check HDRTYPE early, and ignore if it is not supported (n > 2).
- defer access to interrupt configuration register, as its existence depends on
  HDRTYPE.
- add "skip particular funtion in multifunction device" functionality
  to quirk table.
- add GEODE/NS SC1100 quirk (now boots on soekris Net4801).

Revision 1.59 / (download) - annotate - [select for diffs], Fri Aug 15 07:17:21 2003 UTC (20 years, 8 months ago) by itojun
Branch: MAIN
CVS Tags: netbsd-2-base, netbsd-2-1-RELEASE, netbsd-2-1-RC6, netbsd-2-1-RC5, netbsd-2-1-RC4, netbsd-2-1-RC3, netbsd-2-1-RC2, netbsd-2-1-RC1, netbsd-2-1, netbsd-2-0-base, netbsd-2-0-RELEASE, netbsd-2-0-RC5, netbsd-2-0-RC4, netbsd-2-0-RC3, netbsd-2-0-RC2, netbsd-2-0-RC1, netbsd-2-0-3-RELEASE, netbsd-2-0-2-RELEASE, netbsd-2-0-1-RELEASE, netbsd-2-0, netbsd-2
Changes since 1.58: +11 -1 lines
Diff to previous 1.58 (colored) to selected 1.71 (colored)

- check HDRTYPE early, and ignore if it is not supported (n > 2).
- defer access to interrupt configuration register, as its existence depends on
  HDRTYPE.
- add "skip particular funtion in multifunction device" functionality
  to quirk table.
- add GEODE/NS SC1100 quirk (now boots on soekris Net4801).

Revision 1.58.2.1 / (download) - annotate - [select for diffs], Wed Jul 2 15:26:12 2003 UTC (20 years, 9 months ago) by darrenr
Branch: ktrace-lwp
Changes since 1.58: +2 -2 lines
Diff to previous 1.58 (colored) to selected 1.71 (colored)

Apply the aborted ktrace-lwp changes to a specific branch.  This is just for
others to review, I'm concerned that patch fuziness may have resulted in some
errant code being generated but I'll look at that later by comparing the diff
from the base to the branch with the file I attempt to apply to it.  This will,
at the very least, put the changes in a better context for others to review
them and attempt to tinker with removing passing of 'struct lwp' through
the kernel.

Revision 1.58 / (download) - annotate - [select for diffs], Sun Jun 29 22:30:27 2003 UTC (20 years, 9 months ago) by fvdl
Branch: MAIN
Branch point for: ktrace-lwp
Changes since 1.57: +1 -1 lines
Diff to previous 1.57 (colored) to selected 1.71 (colored)

Back out the lwp/ktrace changes. They contained a lot of colateral damage,
and need to be examined and discussed more.

Revision 1.57 / (download) - annotate - [select for diffs], Sat Jun 28 14:21:38 2003 UTC (20 years, 9 months ago) by darrenr
Branch: MAIN
Changes since 1.56: +2 -2 lines
Diff to previous 1.56 (colored) to selected 1.71 (colored)

Pass lwp pointers throughtout the kernel, as required, so that the lwpid can
be inserted into ktrace records.  The general change has been to replace
"struct proc *" with "struct lwp *" in various function prototypes, pass
the lwp through and use l_proc to get the process pointer when needed.

Bump the kernel rev up to 1.6V

Revision 1.56 / (download) - annotate - [select for diffs], Sun Jun 15 23:09:09 2003 UTC (20 years, 10 months ago) by fvdl
Branch: MAIN
Changes since 1.55: +6 -1 lines
Diff to previous 1.55 (colored) to selected 1.71 (colored)

Handle 64bit DMA addresses on PCI for platforms that can (currently only
enabled on amd64). Add a dmat64 field to various PCI attach structures,
and pass it down where needed. Implement a simple new function called
pci_dma64_available(pa) to test if 64bit DMA addresses may be used.
This returns 1 iff _PCI_HAVE_DMA64 is defined in <machine/pci_machdep.h>,
and there is more than 4G of memory.

Revision 1.55 / (download) - annotate - [select for diffs], Tue Mar 25 21:56:20 2003 UTC (21 years ago) by thorpej
Branch: MAIN
Changes since 1.54: +7 -1 lines
Diff to previous 1.54 (colored) to selected 1.71 (colored)

Add PCI VPD access routines.  From psi.cz!freza, PR kern/20889.

Revision 1.54 / (download) - annotate - [select for diffs], Wed Mar 19 17:56:58 2003 UTC (21 years, 1 month ago) by christos
Branch: MAIN
Changes since 1.53: +1 -3 lines
Diff to previous 1.53 (colored) to selected 1.71 (colored)

It is not appropriate for pcivar.h to include "locators.h"
The two files that need it, should include it themselves.

Revision 1.46.2.4 / (download) - annotate - [select for diffs], Fri Sep 6 08:45:36 2002 UTC (21 years, 7 months ago) by jdolecek
Branch: kqueue
Changes since 1.46.2.3: +12 -1 lines
Diff to previous 1.46.2.3 (colored) to branchpoint 1.46 (colored) next main 1.47 (colored) to selected 1.71 (colored)

sync kqueue branch with HEAD

Revision 1.50.2.4 / (download) - annotate - [select for diffs], Mon Jul 15 10:35:44 2002 UTC (21 years, 9 months ago) by gehenna
Branch: gehenna-devsw
Changes since 1.50.2.3: +12 -1 lines
Diff to previous 1.50.2.3 (colored) next main 1.51 (colored) to selected 1.71 (colored)

catch up with -current.

Revision 1.46.2.3 / (download) - annotate - [select for diffs], Sun Jun 23 17:48:02 2002 UTC (21 years, 9 months ago) by jdolecek
Branch: kqueue
Changes since 1.46.2.2: +17 -3 lines
Diff to previous 1.46.2.2 (colored) to branchpoint 1.46 (colored) to selected 1.71 (colored)

catch up with -current on kqueue branch

Revision 1.50.2.3 / (download) - annotate - [select for diffs], Thu Jun 20 16:33:49 2002 UTC (21 years, 10 months ago) by gehenna
Branch: gehenna-devsw
Changes since 1.50.2.2: +2 -1 lines
Diff to previous 1.50.2.2 (colored) to selected 1.71 (colored)

catch up with -current.

Revision 1.44.2.4 / (download) - annotate - [select for diffs], Thu Jun 20 03:45:53 2002 UTC (21 years, 10 months ago) by nathanw
Branch: nathanw_sa
CVS Tags: nathanw_sa_end
Changes since 1.44.2.3: +28 -3 lines
Diff to previous 1.44.2.3 (colored) next main 1.45 (colored) to selected 1.71 (colored)

Catch up to -current.

Revision 1.53 / (download) - annotate - [select for diffs], Tue Jun 18 13:18:37 2002 UTC (21 years, 10 months ago) by tshiozak
Branch: MAIN
CVS Tags: nathanw_sa_before_merge, nathanw_sa_base, kqueue-beforemerge, kqueue-base, kqueue-aftermerge, gmcgarry_ucred_base, gmcgarry_ucred, gmcgarry_ctxsw_base, gmcgarry_ctxsw, gehenna-devsw-base, fvdl_fs64_base
Changes since 1.52: +12 -1 lines
Diff to previous 1.52 (colored) to selected 1.71 (colored)

add support for the per-device power management capability.

int pci_set_powerstate(pci_chipset_tag_t pc, pcitag_t tag, int newstate)
	set power state of the device to newstate.
int pci_get_powerstate(pci_chipset_tag_t pc, pcitag_t tag)
	get current power state of the device.

In the future, these functions will be used for ACPI support.

Revision 1.50.2.2 / (download) - annotate - [select for diffs], Thu May 30 14:46:31 2002 UTC (21 years, 10 months ago) by gehenna
Branch: gehenna-devsw
Changes since 1.50.2.1: +220 -0 lines
Diff to previous 1.50.2.1 (colored) to selected 1.71 (colored)

Catch up with -current.

Revision 1.52 / (download) - annotate - [select for diffs], Thu May 30 12:06:43 2002 UTC (21 years, 10 months ago) by drochner
Branch: MAIN
Changes since 1.51: +2 -1 lines
Diff to previous 1.51 (colored) to selected 1.71 (colored)

implement a check whether a BAR is present at all at a given configuration
space address and use it where the mappings of the VGA card are registered
before descenting too deep into "memory" type specific code
(pci_mem_find() gets noisy if it doesn't like the register)

Revision 1.51 / (download) - annotate - [select for diffs], Sat May 18 21:40:41 2002 UTC (21 years, 11 months ago) by sommerfeld
Branch: MAIN
CVS Tags: netbsd-1-6-base, netbsd-1-6-RELEASE, netbsd-1-6-RC3, netbsd-1-6-RC2, netbsd-1-6-RC1, netbsd-1-6-PATCH001-RELEASE, netbsd-1-6-PATCH001-RC3, netbsd-1-6-PATCH001-RC2, netbsd-1-6-PATCH001-RC1, netbsd-1-6-PATCH001
Branch point for: netbsd-1-6
Changes since 1.50: +4 -3 lines
Diff to previous 1.50 (colored) to selected 1.71 (colored)

Add "pa_rawintrpin" containing unswizzled interrupt pin to pci_attach_args.

Revision 1.50.2.1, Thu May 16 01:01:30 2002 UTC (21 years, 11 months ago) by gehenna
Branch: gehenna-devsw
Changes since 1.50: +0 -219 lines
FILE REMOVED

file pcivar.h was added on branch gehenna-devsw on 2002-05-30 14:46:31 +0000

Revision 1.50 / (download) - annotate - [select for diffs], Thu May 16 01:01:30 2002 UTC (21 years, 11 months ago) by thorpej
Branch: MAIN
Branch point for: gehenna-devsw
Changes since 1.49: +9 -1 lines
Diff to previous 1.49 (colored) to selected 1.71 (colored)

* Add "pcitag_t *pba_bridgetag" to pci_attach_args.  This is set to
  NULL for root PCI busses.  For busses behind a bridge, it points to
  a persistent copy of the bridge's pcitag_t.  This can be very useful
  for machine-dependent PCI bus enumeration code.
* Implement a machine-dependent pci_enumerate_bus() for sparc64 which
  uses OFW device nodes to enumerate the bus.  When a PCI bus that is
  behind a bridge is attached, pci_attach_hook() allocates a new PCI
  chipset tag for the new bus and sets it's "curnode" to the OFW node
  of the bridge.  This is used as a starting point when enumerating
  that bus.  Root busses get the OFW node of the host bridge (psycho).
* Garbage-collect "ofpci" and "ofppb" from the sparc64 port.

Revision 1.49 / (download) - annotate - [select for diffs], Wed May 15 18:13:01 2002 UTC (21 years, 11 months ago) by thorpej
Branch: MAIN
Changes since 1.48: +5 -1 lines
Diff to previous 1.48 (colored) to selected 1.71 (colored)

Split the code that enumerates the PCI bus and that actually probes
for a device into two functions:

* pci_probe_device() actually probes/attaches the device specified
  by the provide pcitag_t.

* pci_enumerate_bus() enumerates the bus, and calls pci_probe_device()
  for each device on the bus.  A pci_enumerate_bus_generic() is provided
  which implements the old method of doing this: If something found at
  dev0/func0, determine number of functions and probe each one.

  Machine-dependent code will be able to specify the bus enumeration
  routine in the future.

Revision 1.46.2.2 / (download) - annotate - [select for diffs], Thu Jan 10 19:57:03 2002 UTC (22 years, 3 months ago) by thorpej
Branch: kqueue
Changes since 1.46.2.1: +24 -3 lines
Diff to previous 1.46.2.1 (colored) to branchpoint 1.46 (colored) to selected 1.71 (colored)

Sync kqueue branch with -current.

Revision 1.46.4.1 / (download) - annotate - [select for diffs], Mon Oct 1 12:46:03 2001 UTC (22 years, 6 months ago) by fvdl
Branch: thorpej-devvp
Changes since 1.46: +27 -3 lines
Diff to previous 1.46 (colored) next main 1.47 (colored) to selected 1.71 (colored)

Catch up with -current.

Revision 1.44.2.3 / (download) - annotate - [select for diffs], Fri Sep 21 22:36:02 2001 UTC (22 years, 6 months ago) by nathanw
Branch: nathanw_sa
Changes since 1.44.2.2: +27 -3 lines
Diff to previous 1.44.2.2 (colored) to selected 1.71 (colored)

Catch up to -current.

Revision 1.48 / (download) - annotate - [select for diffs], Thu Sep 13 21:49:40 2001 UTC (22 years, 7 months ago) by thorpej
Branch: MAIN
CVS Tags: thorpej-mips-cache-base, thorpej-mips-cache, thorpej-devvp-base3, thorpej-devvp-base2, pre-chs-ubcperf, post-chs-ubcperf, newlock-base, newlock, ifpoll-base, eeh-devprop-base, eeh-devprop
Changes since 1.47: +24 -3 lines
Diff to previous 1.47 (colored) to selected 1.71 (colored)

Add an ioctl interface to the PCI bus.  Add ioctls to read/write
PCI configuration space registers, and to fetch bus info.

Revision 1.46.2.1 / (download) - annotate - [select for diffs], Thu Sep 13 01:16:03 2001 UTC (22 years, 7 months ago) by thorpej
Branch: kqueue
Changes since 1.46: +4 -1 lines
Diff to previous 1.46 (colored) to selected 1.71 (colored)

Update the kqueue branch to HEAD.

Revision 1.47 / (download) - annotate - [select for diffs], Mon Sep 10 10:04:49 2001 UTC (22 years, 7 months ago) by fvdl
Branch: MAIN
Changes since 1.46: +4 -1 lines
Diff to previous 1.46 (colored) to selected 1.71 (colored)

Add a pci_find_device function, to find a PCI device using a match
function on all (probed) PCI buses:

int     pci_find_device(struct pci_attach_args *pa,
                        int (*match)(struct pci_attach_args *));

The pci_attach_args structure pointed to by pa is filled in if the
device is found, and 1 is returned. Otherwise 0 is returned.

This function is, unfortunately, needed by the i810 agp code. It's
also of use for LKMs.

Also frob pci_probe_bus to take 2 extra args when used by pci_find_device.

Revision 1.44.2.2 / (download) - annotate - [select for diffs], Thu Jun 21 20:05:11 2001 UTC (22 years, 10 months ago) by nathanw
Branch: nathanw_sa
Changes since 1.44.2.1: +2 -1 lines
Diff to previous 1.44.2.1 (colored) to selected 1.71 (colored)

Catch up to -current.

Revision 1.42.4.1 / (download) - annotate - [select for diffs], Tue May 15 21:00:17 2001 UTC (22 years, 11 months ago) by he
Branch: netbsd-1-5
CVS Tags: netbsd-1-5-PATCH003, netbsd-1-5-PATCH002, netbsd-1-5-PATCH001
Changes since 1.42: +2 -1 lines
Diff to previous 1.42 (colored) next main 1.43 (colored) to selected 1.71 (colored)

Pull up revision 1.46 (requested by bouyer):
  Add a pa_bus member to pci_attach_args, so that the PCI bus number
  can be used in pci device drivers.

Revision 1.46 / (download) - annotate - [select for diffs], Fri May 4 15:13:17 2001 UTC (22 years, 11 months ago) by bouyer
Branch: MAIN
CVS Tags: thorpej-devvp-base
Branch point for: thorpej-devvp, kqueue
Changes since 1.45: +2 -1 lines
Diff to previous 1.45 (colored) to selected 1.71 (colored)

Add pci bus number to pci_attach_args, as suggested by Jason on tech-kern
(needed for pciide)

Revision 1.44.2.1 / (download) - annotate - [select for diffs], Mon Apr 9 01:57:10 2001 UTC (23 years ago) by nathanw
Branch: nathanw_sa
Changes since 1.44: +3 -1 lines
Diff to previous 1.44 (colored) to selected 1.71 (colored)

Catch up with -current.

Revision 1.41.2.2 / (download) - annotate - [select for diffs], Mon Mar 12 13:31:15 2001 UTC (23 years, 1 month ago) by bouyer
Branch: thorpej_scsipi
Changes since 1.41.2.1: +3 -9 lines
Diff to previous 1.41.2.1 (colored) to branchpoint 1.41 (colored) next main 1.42 (colored) to selected 1.71 (colored)

Sync with HEAD.

Revision 1.45 / (download) - annotate - [select for diffs], Mon Mar 5 23:50:02 2001 UTC (23 years, 1 month ago) by matt
Branch: MAIN
CVS Tags: thorpej_scsipi_nbase, thorpej_scsipi_beforemerge, thorpej_scsipi_base
Changes since 1.44: +3 -1 lines
Diff to previous 1.44 (colored) to selected 1.71 (colored)

Only include "locators.h" is _KERNEL is defined.

Revision 1.44 / (download) - annotate - [select for diffs], Mon Feb 12 09:14:53 2001 UTC (23 years, 2 months ago) by mrg
Branch: MAIN
Branch point for: nathanw_sa
Changes since 1.43: +1 -9 lines
Diff to previous 1.43 (colored) to selected 1.71 (colored)

backout the parts of the previous change (7 months ago) that were *not* part
of the sys/vm removal, but some (fortunately disabled) work-in-progress.

Revision 1.41.2.1 / (download) - annotate - [select for diffs], Mon Nov 20 11:42:35 2000 UTC (23 years, 5 months ago) by bouyer
Branch: thorpej_scsipi
Changes since 1.41: +10 -1 lines
Diff to previous 1.41 (colored) to selected 1.71 (colored)

Update thorpej_scsipi to -current as of a month ago
A i386 GENERIC kernel compiles without the siop, ahc and bha drivers
(will be updated later). i386 IDE/ATAPI and ncr work, as well as
sparc/esp_sbus. alpha should work as well (untested yet).
siop, ahc and bha will be updated once I've updated the branch to current
-current, as well as machine-dependant code.

Revision 1.43 / (download) - annotate - [select for diffs], Wed Jun 28 16:08:50 2000 UTC (23 years, 9 months ago) by mrg
Branch: MAIN
Changes since 1.42: +9 -1 lines
Diff to previous 1.42 (colored) to selected 1.71 (colored)

remove include of <vm/vm.h>. <vm/vm.h> -> <uvm/uvm_extern.h>

Revision 1.42 / (download) - annotate - [select for diffs], Wed May 10 16:58:42 2000 UTC (23 years, 11 months ago) by thorpej
Branch: MAIN
CVS Tags: netbsd-1-5-base, netbsd-1-5-RELEASE, netbsd-1-5-BETA2, netbsd-1-5-BETA, netbsd-1-5-ALPHA2, minoura-xpg4dl-base, minoura-xpg4dl
Branch point for: netbsd-1-5
Changes since 1.41: +2 -1 lines
Diff to previous 1.41 (colored) to selected 1.71 (colored)

Add support for mapping 64-bit PCI memory space.  If the region
is mapped in a way that is inaccessible by a 32-bit bus_addr_t, then
print a message to that effect and return failure.

Original patches by Bill Studenmund, with a few small changes by me.

Revision 1.41 / (download) - annotate - [select for diffs], Thu Sep 30 20:30:06 1999 UTC (24 years, 6 months ago) by thorpej
Branch: MAIN
CVS Tags: wrstuden-devbsize-base, wrstuden-devbsize-19991221, wrstuden-devbsize, fvdl-softdep-base, fvdl-softdep, comdex-fall-1999-base, comdex-fall-1999, chs-ubc2-newbase
Branch point for: thorpej_scsipi
Changes since 1.40: +5 -1 lines
Diff to previous 1.40 (colored) to selected 1.71 (colored)

Define flags in pci_attach_args which indicate it's okay to use the
Memory Read Line, Memory Read Multiple, and Memory Write and Invalidate
PCI commands.

Revision 1.38.4.1 / (download) - annotate - [select for diffs], Mon Jun 21 01:18:41 1999 UTC (24 years, 10 months ago) by thorpej
Branch: chs-ubc2
Changes since 1.38: +1 -1 lines
Diff to previous 1.38 (colored) next main 1.39 (colored) to selected 1.71 (colored)

Sync w/ -current.

Revision 1.40 / (download) - annotate - [select for diffs], Thu May 6 01:10:28 1999 UTC (24 years, 11 months ago) by thorpej
Branch: MAIN
CVS Tags: chs-ubc2-base
Changes since 1.39: +0 -1 lines
Diff to previous 1.39 (colored) to selected 1.71 (colored)

Back out previous.  Thanks to cgd for pointing out another way to do this.

Revision 1.39 / (download) - annotate - [select for diffs], Thu May 6 01:01:19 1999 UTC (24 years, 11 months ago) by thorpej
Branch: MAIN
Changes since 1.38: +2 -1 lines
Diff to previous 1.38 (colored) to selected 1.71 (colored)

Add a `bus' member to the pci_attach_args.  This is not normally used,
but some child drivers might need to know this information.

Revision 1.38 / (download) - annotate - [select for diffs], Fri Mar 19 03:37:52 1999 UTC (25 years, 1 month ago) by cgd
Branch: MAIN
CVS Tags: netbsd-1-4-base, netbsd-1-4-RELEASE, netbsd-1-4-PATCH003, netbsd-1-4-PATCH002, netbsd-1-4-PATCH001, netbsd-1-4, kame_14_19990705, kame_14_19990628, kame_141_19991130, kame
Branch point for: chs-ubc2
Changes since 1.37: +2 -22 lines
Diff to previous 1.37 (colored) to selected 1.71 (colored)

pull pci_machdep.h in from machine/

Revision 1.37 / (download) - annotate - [select for diffs], Sat Nov 7 16:47:22 1998 UTC (25 years, 5 months ago) by drochner
Branch: MAIN
CVS Tags: kenh-if-detach-base, kenh-if-detach, chs-ubc-base, chs-ubc
Changes since 1.36: +4 -1 lines
Diff to previous 1.36 (colored) to selected 1.71 (colored)

add support for "extended capabilities" (new in PCI spec 2.2)

Revision 1.36 / (download) - annotate - [select for diffs], Sat Aug 15 03:02:47 1998 UTC (25 years, 8 months ago) by mycroft
Branch: MAIN
Changes since 1.35: +3 -3 lines
Diff to previous 1.35 (colored) to selected 1.71 (colored)

Make copyright notices with my name consistent.

Revision 1.35 / (download) - annotate - [select for diffs], Sun Jul 12 19:51:58 1998 UTC (25 years, 9 months ago) by augustss
Branch: MAIN
CVS Tags: eeh-paddr_t-base, eeh-paddr_t
Changes since 1.34: +6 -1 lines
Diff to previous 1.34 (colored) to selected 1.71 (colored)

Add USB support.  Supported so far:
* UHCI and OHCI host controllers on PCI
* Hubs
* HID devices withe special drivers for mouse and keyboard
* Printers

Revision 1.34 / (download) - annotate - [select for diffs], Tue Jun 9 18:48:41 1998 UTC (25 years, 10 months ago) by thorpej
Branch: MAIN
Changes since 1.33: +1 -2 lines
Diff to previous 1.33 (colored) to selected 1.71 (colored)

Remove the PCI-ISA bridge callback mechanism; it's no longer needed.

Revision 1.33 / (download) - annotate - [select for diffs], Sun May 31 06:07:59 1998 UTC (25 years, 10 months ago) by cgd
Branch: MAIN
Changes since 1.32: +20 -1 lines
Diff to previous 1.32 (colored) to selected 1.71 (colored)

add a PCI 'quirks' mechanism, meant to be used as the mechanism
of last resort when trying to communicate information about
bogus behaviour of PCI devices to the MI autoconfiguration code.
In general, bogus behaviour should be handled by drivers, but there
are some types of bogons which can't be addressed that way.  The
only quirk currently defined is one which indicates that the device
is multi-function even though the device's header says otherwise.
(Mmm, Intel 82371FB PCI-to-ISA Bridge (PIIX); you'd think that at least
Intel would have gotten it right...)

Revision 1.32 / (download) - annotate - [select for diffs], Mon May 25 22:11:37 1998 UTC (25 years, 10 months ago) by mark
Branch: MAIN
Changes since 1.31: +5 -2 lines
Diff to previous 1.31 (colored) to selected 1.71 (colored)

Include arm32/pci/pci_machdep.h if arm32 is defined.

Revision 1.31 / (download) - annotate - [select for diffs], Mon May 18 17:25:18 1998 UTC (25 years, 11 months ago) by cgd
Branch: MAIN
Changes since 1.30: +3 -2 lines
Diff to previous 1.30 (colored) to selected 1.71 (colored)

largely reimplement pci_conf_print():
* print all configuration space registers.  Then, where possible,
  interpret them.  (That is, PRESENT ALL THE DATA, then interpret it --
  don't hide data behind interpretation.  Also, when interpreting
  fields, try to print out the specific value that's being interpreted.)
* handle different header types.
* allow caller to specify a function which can interpret the
  device-dependent header and is responsible for pretty-printing it.

It spews (use 'options MSGBUFSIZE=...' 8-), but when you want the data,
you really want _all_ of it.

Still needs some cleanup and additional code (e.g. interepretation
of PCI-PCI (type 1) and PCI-Cardbus (type 2(?)) bridge headers).

Revision 1.30 / (download) - annotate - [select for diffs], Fri May 15 12:35:06 1998 UTC (25 years, 11 months ago) by tsubai
Branch: MAIN
Changes since 1.29: +5 -2 lines
Diff to previous 1.29 (colored) to selected 1.71 (colored)

Add macppc support.

Revision 1.29 / (download) - annotate - [select for diffs], Tue Apr 14 21:24:51 1998 UTC (26 years ago) by thorpej
Branch: MAIN
Changes since 1.28: +2 -1 lines
Diff to previous 1.28 (colored) to selected 1.71 (colored)

Add pci_conf_print(), a function to dump the PCI configuration space, useful
in driver debugging.  From Zubin D. Dittia <zubin@clouseau.arl.wustl.edu>,
PR #4249.

Revision 1.24.2.2 / (download) - annotate - [select for diffs], Wed Oct 15 05:37:08 1997 UTC (26 years, 6 months ago) by thorpej
Branch: marc-pcmcia
Changes since 1.24.2.1: +5 -2 lines
Diff to previous 1.24.2.1 (colored) to branchpoint 1.24 (colored) next main 1.25 (colored) to selected 1.71 (colored)

Update marc-pcmcia branch from trunk.

Revision 1.28 / (download) - annotate - [select for diffs], Tue Oct 14 07:15:47 1997 UTC (26 years, 6 months ago) by sakamoto
Branch: MAIN
CVS Tags: netbsd-1-3-base, netbsd-1-3-RELEASE, netbsd-1-3-PATCH003-CANDIDATE2, netbsd-1-3-PATCH003-CANDIDATE1, netbsd-1-3-PATCH003-CANDIDATE0, netbsd-1-3-PATCH003, netbsd-1-3-PATCH002, netbsd-1-3-PATCH001, netbsd-1-3-BETA, netbsd-1-3, marc-pcmcia-base
Changes since 1.27: +5 -2 lines
Diff to previous 1.27 (colored) to selected 1.71 (colored)

add bebox

Revision 1.27 / (download) - annotate - [select for diffs], Mon Oct 6 21:01:23 1997 UTC (26 years, 6 months ago) by thorpej
Branch: MAIN
Changes since 1.26: +2 -2 lines
Diff to previous 1.26 (colored) to selected 1.71 (colored)

Back out last change.  (Partially my fault, for not reviewing it close
enough.)

Revision 1.26 / (download) - annotate - [select for diffs], Fri Oct 3 18:45:41 1997 UTC (26 years, 6 months ago) by lonhyn
Branch: MAIN
Changes since 1.25: +3 -3 lines
Diff to previous 1.25 (colored) to selected 1.71 (colored)

pci_mapreg_info() has been changed to take arguments like pci_mapreg_map()

Revision 1.24.2.1 / (download) - annotate - [select for diffs], Mon Sep 1 20:29:54 1997 UTC (26 years, 7 months ago) by thorpej
Branch: marc-pcmcia
Changes since 1.24: +1 -11 lines
Diff to previous 1.24 (colored) to selected 1.71 (colored)

Update marc-pcmcia branch from trunk.

Revision 1.25 / (download) - annotate - [select for diffs], Sat Aug 30 06:48:24 1997 UTC (26 years, 7 months ago) by mycroft
Branch: MAIN
CVS Tags: thorpej-signal-base, thorpej-signal
Changes since 1.24: +1 -11 lines
Diff to previous 1.24 (colored) to selected 1.71 (colored)

Don't export pci_*_find() any more.

Revision 1.24 / (download) - annotate - [select for diffs], Thu Jul 17 01:01:06 1997 UTC (26 years, 9 months ago) by jtk
Branch: MAIN
CVS Tags: marc-pcmcia-bp
Branch point for: marc-pcmcia
Changes since 1.23: +9 -7 lines
Diff to previous 1.23 (colored) to selected 1.71 (colored)

use "locators.h" defines for indices for cf_loc[] and default values

Revision 1.23 / (download) - annotate - [select for diffs], Fri Jun 6 23:48:05 1997 UTC (26 years, 10 months ago) by thorpej
Branch: MAIN
CVS Tags: bouyer-scsipi
Changes since 1.22: +3 -1 lines
Diff to previous 1.22 (colored) to selected 1.71 (colored)

Pull thorpej-bus-dma branch into mainline.

Revision 1.22.2.1 / (download) - annotate - [select for diffs], Tue May 13 03:54:11 1997 UTC (26 years, 11 months ago) by thorpej
Branch: thorpej-bus-dma
Changes since 1.22: +3 -1 lines
Diff to previous 1.22 (colored) next main 1.23 (colored) to selected 1.71 (colored)

Provide the bus dma tag to children.

Revision 1.22 / (download) - annotate - [select for diffs], Sun Apr 13 22:05:10 1997 UTC (27 years ago) by cgd
Branch: MAIN
CVS Tags: thorpej-bus-dma-base
Branch point for: thorpej-bus-dma
Changes since 1.21: +3 -1 lines
Diff to previous 1.21 (colored) to selected 1.71 (colored)

create pci_mapreg_info() which simply gets mapping register information.
It's used by pci_mapreg_map() and can be used directly by drivers
with special needs (e.g. those being attached as console devices).

Revision 1.21 / (download) - annotate - [select for diffs], Sun Apr 13 20:14:39 1997 UTC (27 years ago) by cgd
Branch: MAIN
Changes since 1.20: +2 -2 lines
Diff to previous 1.20 (colored) to selected 1.71 (colored)

rename pci_map_register to pci_mapreg_map.  The latter name is more
descriptive, and allows for a sane name for a function which just digs
the info out of the mapping register but doesn't do the mapping.

Revision 1.20 / (download) - annotate - [select for diffs], Sun Apr 13 19:46:01 1997 UTC (27 years ago) by cgd
Branch: MAIN
Changes since 1.19: +13 -4 lines
Diff to previous 1.19 (colored) to selected 1.71 (colored)

implement pci_map_register(), which gets information about a device's
mapping register, maps it, and returns all of the relevant information.
deprecate use of pci_{io,mem}_find(), but leave them around (for a while)
for backward compatibility with third-party drivers.

Revision 1.19 / (download) - annotate - [select for diffs], Thu Apr 10 23:12:23 1997 UTC (27 years ago) by cgd
Branch: MAIN
Changes since 1.18: +11 -3 lines
Diff to previous 1.18 (colored) to selected 1.71 (colored)

pass memory- and i/o-enabled flags down via the PCI bus and device attach
arguments, so that a device can tell if its memory and I/O spaces are
enabled.  The flags are cleared, depending on the contents of devices CSR
registers, in the machine-independent PCI bus code.

Revision 1.18 / (download) - annotate - [select for diffs], Sun Dec 1 21:02:18 1996 UTC (27 years, 4 months ago) by leo
Branch: MAIN
CVS Tags: thorpej-setroot, mrg-vm-swap, is-newarp-before-merge, is-newarp-base, is-newarp
Changes since 1.17: +5 -2 lines
Diff to previous 1.17 (colored) to selected 1.71 (colored)

The atari has a pci_machdep.h file.

Revision 1.17 / (download) - annotate - [select for diffs], Sat Nov 23 21:58:17 1996 UTC (27 years, 4 months ago) by cgd
Branch: MAIN
Changes since 1.16: +2 -1 lines
Diff to previous 1.16 (colored) to selected 1.71 (colored)

Provide a routine so that ISA/EISA bridges can set up a callback so
that their child busses can be attached after the PCI bus
autoconfiguration for their parent bus is done.

This works because:
	(1) there can be at most one ISA/EISA bridge per PCI bus, and
	(2) any ISA/EISA bridges must be attached to primary PCI
	    busses (i.e. bus zero).

That boils down to: there can only be one of these outstanding
at a time, it is cleared when configuring PCI bus 0 before any
subdevices have been found, and it is run after all subdevices
of PCI bus 0 have been found.

This (or something like it) is needed because there are some (legacy)
PCI devices which can show up as ISA/EISA devices as well (the prime
example of which are VGA controllers).  If you attach ISA from a
PCI-ISA/EISA bridge, and the bridge is seen before the video board is,
the board can show up as an ISA device, and that can (bogusly)
complicate the PCI device's attach code, or make the PCI device not be
properly attached at all.

This could be done with machine-dependent code, but as more ports
add support for PCI (and PCI-ISA/EISA bridges) more will need it.
The i386 port could (perhaps should) be converted to use it as well.

Revision 1.16 / (download) - annotate - [select for diffs], Mon Oct 21 22:56:57 1996 UTC (27 years, 6 months ago) by thorpej
Branch: MAIN
Changes since 1.15: +10 -8 lines
Diff to previous 1.15 (colored) to selected 1.71 (colored)

New bus.h implementation/interface:
	- No more distinction between i/o-mapped and memory-mapped
	  devices.  It's all "bus space" now, and space tags
	  differentiate the space with finer grain than the
	  bus chipset tag.
	- Add memory barrier methods.
	- Implement space alloc/free methods.
	- Implement region read/write methods (like memcpy to/from
	  bus space).
This interface provides a better abstraction for dealing with
machine-independent chipset drivers.

Revision 1.15 / (download) - annotate - [select for diffs], Thu Mar 28 02:16:23 1996 UTC (28 years ago) by cgd
Branch: MAIN
CVS Tags: netbsd-1-2-base, netbsd-1-2-RELEASE, netbsd-1-2-PATCH001, netbsd-1-2-BETA, netbsd-1-2
Changes since 1.14: +3 -3 lines
Diff to previous 1.14 (colored) to selected 1.71 (colored)

remove inappropriate an potentially confusing comments ("unnecessary?") from
the pa_device and pa_function members of the pci_attach_args structure.

Revision 1.14 / (download) - annotate - [select for diffs], Wed Mar 27 04:08:31 1996 UTC (28 years ago) by cgd
Branch: MAIN
Changes since 1.13: +51 -22 lines
Diff to previous 1.13 (colored) to selected 1.71 (colored)

modify these to provide a new, better-specified PCI interface
(soon to be documented on mailing lists; eventually in section 9 manual
pages), most importantly:
	(1) support interrupt pin swizzling on non-i386 systems with
	    PCI-PCI bridges (per PPB spec; done, but meaningless, on i386).
	(2) provide pci_{io,mem}_find(), to determine what I/O or memory
	    space is described by a given PCI configuration space
	    mapping register.
	(3) provide pci_intr_map(), pci_intr_string(), and
	    pci_intr_{,dis}establish() to manipulate and print info about
	    PCI interrupts.
	(4) make pci functions take as an argument a machine-dependent
	    cookie, to allow more flexibility in implementation.

Revision 1.13 / (download) - annotate - [select for diffs], Thu Mar 14 02:35:33 1996 UTC (28 years, 1 month ago) by cgd
Branch: MAIN
Changes since 1.12: +25 -2 lines
Diff to previous 1.12 (colored) to selected 1.71 (colored)

(1) provide #defines for cf_loc[] entries for devices that attach to
    pcibus and pci.
(2) remove the #ifdef i386 from pci.c, and provide a machine-dependent
    hook (pci_md_attach_hook()) to do any machine-dependent attachment
    gunk, e.g. on the i386 printing out the configuration mode (if bus 0)
(3) don't pass max device number for a given bus in, use
    PCI_MAX_DEVICE_NUMBER, which can be defined on a per-machine basis.
    (defaults to 32.  on i386, it's 32 if pci conf mode == 1, 16 if 2.)

Revision 1.12 / (download) - annotate - [select for diffs], Fri Mar 8 20:25:30 1996 UTC (28 years, 1 month ago) by cgd
Branch: MAIN
Changes since 1.11: +11 -1 lines
Diff to previous 1.11 (colored) to selected 1.71 (colored)

pass a bus_chipset_tag_t (defined in <machine/bus.h>) to the bus when
attaching, and to the devices when attaching them.  #include <machine/bus.h>
to make this backward compatible with old #include requirements.
Also, clean up idempotency so that isa/eisa/pci "var.h" headers are
consistent (make them all idempotent).

Revision 1.11 / (download) - annotate - [select for diffs], Wed Feb 28 01:44:44 1996 UTC (28 years, 1 month ago) by cgd
Branch: MAIN
Changes since 1.10: +17 -6 lines
Diff to previous 1.10 (colored) to selected 1.71 (colored)

make PCI bus match/attach and sub-device attachment machine-independent.

Revision 1.10 / (download) - annotate - [select for diffs], Mon Jan 22 21:08:16 1996 UTC (28 years, 3 months ago) by cgd
Branch: MAIN
Changes since 1.9: +2 -2 lines
Diff to previous 1.9 (colored) to selected 1.71 (colored)

update PCIVERBOSE code in various ways:
	(1) remove the 'UNSUPP' keyword from the device list,
	    because it can't be reasonably used (becuase different
	    devices may be supported on different machines, for
	    good reason).
	(2) enhance pci_devinfo so that class/subclass information
	    is optional (so pci_devinfo can be used by drivers that
	    match classes of devices, and want to look up the
	    devices' names easily).
	(3) more known vendors and devices.

Revision 1.9 / (download) - annotate - [select for diffs], Sun Dec 24 02:32:31 1995 UTC (28 years, 3 months ago) by mycroft
Branch: MAIN
Changes since 1.8: +2 -11 lines
Diff to previous 1.8 (colored) to selected 1.71 (colored)

The IST_* and IPL_* constants are not bus-specific; don't treat them as such.
Change splimp -> splnet in Ethernet, ARCnet, and FDDI drivers.

Revision 1.8 / (download) - annotate - [select for diffs], Sun Jun 18 01:26:50 1995 UTC (28 years, 10 months ago) by cgd
Branch: MAIN
CVS Tags: netbsd-1-1-base, netbsd-1-1-RELEASE, netbsd-1-1-PATCH001, netbsd-1-1
Changes since 1.7: +2 -1 lines
Diff to previous 1.7 (colored) to selected 1.71 (colored)

prototype for pci_devinfo function

Revision 1.7 / (download) - annotate - [select for diffs], Sun Jun 18 01:24:40 1995 UTC (28 years, 10 months ago) by cgd
Branch: MAIN
Changes since 1.6: +8 -4 lines
Diff to previous 1.6 (colored) to selected 1.71 (colored)

add include for the alpha, alphabetize

Revision 1.6 / (download) - annotate - [select for diffs], Tue May 23 03:43:08 1995 UTC (28 years, 11 months ago) by cgd
Branch: MAIN
Changes since 1.5: +6 -4 lines
Diff to previous 1.5 (colored) to selected 1.71 (colored)

split single-subdevice lookup & attachment into a subroutine
(pci_attach_subdev()).  remove pciattach() function and the pcicd cfdriver
struct, the former because thre are a lot of attachment actions which really
are machine-dependent (perhaps even "most"), and the latter because now that
both pcimatch() and pciattach() are machine-dependent it's bad style to
declare them here and it gains nothing.

Revision 1.5 / (download) - annotate - [select for diffs], Mon Apr 17 12:09:47 1995 UTC (29 years ago) by cgd
Branch: MAIN
Changes since 1.4: +10 -2 lines
Diff to previous 1.4 (colored) to selected 1.71 (colored)

clean up several ISA device interfaces: autoconfiguration, header
inclusion, and interrupt configuration.  more work still needs to be done,
but it's getting better...

Revision 1.4 / (download) - annotate - [select for diffs], Fri Jan 27 05:44:33 1995 UTC (29 years, 2 months ago) by cgd
Branch: MAIN
Changes since 1.3: +8 -1 lines
Diff to previous 1.3 (colored) to selected 1.71 (colored)

include files from the correct places.

Revision 1.3 / (download) - annotate - [select for diffs], Fri Nov 4 09:42:23 1994 UTC (29 years, 5 months ago) by mycroft
Branch: MAIN
Changes since 1.2: +1 -2 lines
Diff to previous 1.2 (colored) to selected 1.71 (colored)

Make a wrapper match function to check the bus and device numbers, rather
than insisting that every driver do it.

Revision 1.2 / (download) - annotate - [select for diffs], Thu Oct 27 04:21:42 1994 UTC (29 years, 5 months ago) by cgd
Branch: MAIN
Changes since 1.1: +2 -2 lines
Diff to previous 1.1 (colored) to selected 1.71 (colored)

new RCS ID format.

Revision 1.1 / (download) - annotate - [select for diffs], Tue Aug 9 00:47:54 1994 UTC (29 years, 8 months ago) by mycroft
Branch: MAIN
Diff to selected 1.71 (colored)

Add PCI autoconfiguration support.

This form allows you to request diff's between any two revisions of a file. You may select a symbolic revision name using the selection box or you may type in a numeric name using the type-in text box.




CVSweb <webmaster@jp.NetBSD.org>