<feed xmlns='http://www.w3.org/2005/Atom'>
<title>src-test2/sys/dev/ppc/ppc.c, branch release/8.2.0_cvs</title>
<subtitle>FreeBSD source tree</subtitle>
<id>https://cgit-dev.freebsd.org/src-test2/atom?h=release%2F8.2.0_cvs</id>
<link rel='self' href='https://cgit-dev.freebsd.org/src-test2/atom?h=release%2F8.2.0_cvs'/>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src-test2/'/>
<updated>2011-02-16T16:18:46Z</updated>
<entry>
<title>Copy releng/8.2 to release/8.2.0 for 8.2-RELEASE.</title>
<updated>2011-02-16T16:18:46Z</updated>
<author>
<name>Ken Smith</name>
<email>kensmith@FreeBSD.org</email>
</author>
<published>2011-02-16T16:18:46Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src-test2/commit/?id=dec99dafe5763ba1db6950342aa80a634169c083'/>
<id>urn:sha1:dec99dafe5763ba1db6950342aa80a634169c083</id>
<content type='text'>
Approved by:	re (implicit)

This commit was manufactured to restore the state of the 8.2-RELEASE image.
</content>
</entry>
<entry>
<title>reset_epp and ecp_sync both return int.</title>
<updated>2009-02-05T19:31:55Z</updated>
<author>
<name>Warner Losh</name>
<email>imp@FreeBSD.org</email>
</author>
<published>2009-02-05T19:31:55Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src-test2/commit/?id=3fd8527379e21cda1c73c0987e629e4912c761a0'/>
<id>urn:sha1:3fd8527379e21cda1c73c0987e629e4912c761a0</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Add locking to ppc and ppbus and mark the whole lot MPSAFE:</title>
<updated>2009-01-21T23:10:06Z</updated>
<author>
<name>John Baldwin</name>
<email>jhb@FreeBSD.org</email>
</author>
<published>2009-01-21T23:10:06Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src-test2/commit/?id=2067d312d40c5e179c240a796d047fe4c8e276ee'/>
<id>urn:sha1:2067d312d40c5e179c240a796d047fe4c8e276ee</id>
<content type='text'>
- To avoid having a bunch of locks that end up always getting acquired as
  a group, give each ppc(4) device a mutex which it shares with all the
  child devices including ppbus(4), lpt(4), plip(4), etc.  This mutex
  is then used for all the locking.
- Rework the interrupt handling stuff yet again.  Now ppbus drivers setup
  their interrupt handler during attach and tear it down during detach
  like most other drivers.  ppbus(4) only invokes the interrupt handler
  of the device that currently owns the bus (if any) when an interrupt
  occurs, however.  Also, interrupt handlers in general now accept their
  softc pointers as their argument rather than the device_t.  Another
  feature of the ppbus interrupt handlers is that they are called with
  the parent ppc device's lock already held.  This minimizes the number
  of lock operations during an interrupt.
- Mark plip(4), lpt(4), pcfclock(4), ppi(4), vpo(4) MPSAFE.
- lpbb(4) uses the ppc lock instead of Giant.
- Other plip(4) changes:
  - Add a mutex to protect the global tables in plip(4) and free them on
    module unload.
  - Add a detach routine.
  - Split out the init/stop code from the ioctl routine into separate
    functions.
- Other lpt(4) changes:
  - Use device_printf().
  - Use a dedicated callout for the lptout timer.
  - Allocate the I/O buffers at attach and detach rather than during
    open and close as this simplifies the locking at the cost of
    1024+32 bytes when the driver is attached.
- Other ppi(4) changes:
  - Use an sx lock to serialize open and close.
  - Remove unused HADBUS flag.
  - Add a detach routine.
  - Use a malloc'd buffer for each read and write to avoid races with
    concurrent read/write.
- Other pps(4) changes:
  - Use a callout rather than a callout handle with timeout().
  - Conform to the new ppbus requirements (regular mutex, non-filter
    interrupt handler).  pps(4) is probably going to have to become a
    standalone driver that doesn't use ppbus(4) to satisfy it's
    requirements for low latency as a result.
  - Use an sx lock to serialize open and close.
- Other vpo(4) changes:
  - Use the parent ppc device's lock to create the CAM sim instead of
    Giant.
- Other ppc(4) changes:
  - Fix ppc_isa's detach method to detach instead of calling attach.

Tested by:	  no one :-(
</content>
</entry>
<entry>
<title>Various whitespace and style fixes.</title>
<updated>2008-11-16T17:42:02Z</updated>
<author>
<name>John Baldwin</name>
<email>jhb@FreeBSD.org</email>
</author>
<published>2008-11-16T17:42:02Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src-test2/commit/?id=284c87f60ea12364d2cbf81ae2ebd1fd9c7ca788'/>
<id>urn:sha1:284c87f60ea12364d2cbf81ae2ebd1fd9c7ca788</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Fix build with PPC_PROBE_CHIPSET enabled.</title>
<updated>2008-10-22T19:39:16Z</updated>
<author>
<name>John Baldwin</name>
<email>jhb@FreeBSD.org</email>
</author>
<published>2008-10-22T19:39:16Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src-test2/commit/?id=ff80967485d23d23b4992c1fa6f69bfe7110a57e'/>
<id>urn:sha1:ff80967485d23d23b4992c1fa6f69bfe7110a57e</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Several cleanups to remove the need for explicit unit numbers and a few</title>
<updated>2008-10-21T18:30:10Z</updated>
<author>
<name>John Baldwin</name>
<email>jhb@FreeBSD.org</email>
</author>
<published>2008-10-21T18:30:10Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src-test2/commit/?id=ae6b868a2adacd6235c403cd2ca8aa7ec0c14399'/>
<id>urn:sha1:ae6b868a2adacd6235c403cd2ca8aa7ec0c14399</id>
<content type='text'>
other fixes:
- Add pointers back to device_t objects in softc structures instead
  of storing the unit and using devclass_get_device().
- Add 'lpbb', 'pcf', 'pps', and 'vpo' child devices to every 'ppbus' device
  instead of just the first one.
- Store softc pointers in si_drv1 of character devices instead of
  pulling the unit number from the minor number and using
  devclass_get_softc() and devclass_get_device().
- Store the LP_BYPASS flag in si_drv2 instead of encoding it in the minor
  number.
- Destroy character devices for lpt(4) when detaching the device.
- Use bus_print_child_footer() instead of duplicating it in
  ppbus_print_child() and fix ppbus_print_child()'s return value.
- Remove unused AVM ivar from ppbus.
- Don't store the 'mode' ivar in the ppbus ivars since we always fetch it
  from the parent anyway.
- Try to detach all the child devices before deleting them in
  ppbus_detach().
- Use pause() instead of a tsleep() on a dummy address when polling the
  ppbus.
- Use if_printf() and device_printf() instead of explicit names with unit
  numbers.

Silence on:	current@
</content>
</entry>
<entry>
<title>Rework the handling of interrupt handlers for children of ppc and ppbus:</title>
<updated>2008-09-15T22:26:32Z</updated>
<author>
<name>John Baldwin</name>
<email>jhb@FreeBSD.org</email>
</author>
<published>2008-09-15T22:26:32Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src-test2/commit/?id=ca3d37955c7c41e64a80c97b3f1c1fa4e9ff4897'/>
<id>urn:sha1:ca3d37955c7c41e64a80c97b3f1c1fa4e9ff4897</id>
<content type='text'>
- Retire IVARs for passing IRQs around.  Instead, ppbus and ppc now allow
  child devices to access the interrupt by via a rid 0 IRQ resource
  using bus_alloc_resource_any().
- ppc creates its own interrupt event to manage the interrupt handlers of
  child devices.  ppc does not allow child devices to use filters.  It
  could allow this if needed, but none of the current drivers use them
  and it adds a good bit of complication.  It uses
  intr_event_execute_handlers() to fire the child device interrupt handlers
  from its threaded interrupt handler.
- Remove the ppbus_dummy_intr() hack.  Now the ppc device always has an
  interrupt handler registered and we no longer bounce all the way up to
  nexus to manage adding/removing ppbus child interrupt handlers.  Instead,
  the child handlers are added and removed to the private interrupt event
  in the ppc device.
</content>
</entry>
<entry>
<title>Use bus_foo() rather than bus_space_foo() and remove bus handle and tag</title>
<updated>2008-08-22T18:43:19Z</updated>
<author>
<name>John Baldwin</name>
<email>jhb@FreeBSD.org</email>
</author>
<published>2008-08-22T18:43:19Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src-test2/commit/?id=8fd40d8a9efddbe0ee2985ffceeca4a72c86e32f'/>
<id>urn:sha1:8fd40d8a9efddbe0ee2985ffceeca4a72c86e32f</id>
<content type='text'>
from softc.
</content>
</entry>
<entry>
<title>Don't call bus_deactivate_resource() explicitly before calling</title>
<updated>2007-03-21T03:38:37Z</updated>
<author>
<name>Yoshihiro Takahashi</name>
<email>nyan@FreeBSD.org</email>
</author>
<published>2007-03-21T03:38:37Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src-test2/commit/?id=41f5bd0f6dc8a92fde5135b6c674e35d4b96501e'/>
<id>urn:sha1:41f5bd0f6dc8a92fde5135b6c674e35d4b96501e</id>
<content type='text'>
bus_release_resource().  This is needed for pc98 by upcoming nexus related
change.
</content>
</entry>
<entry>
<title>o Wrap ppc_setup_intr() at 80.</title>
<updated>2007-03-06T11:36:33Z</updated>
<author>
<name>Paolo Pisati</name>
<email>piso@FreeBSD.org</email>
</author>
<published>2007-03-06T11:36:33Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src-test2/commit/?id=72565ac3e8a1fc7d4282968a8e4d3ad176f3d935'/>
<id>urn:sha1:72565ac3e8a1fc7d4282968a8e4d3ad176f3d935</id>
<content type='text'>
o Fix a bit the indentation.
</content>
</entry>
</feed>
