PERFORCE change 169011 for review
Yohanes Nugroho
yohanes at FreeBSD.org
Tue Sep 29 15:01:05 UTC 2009
http://perforce.freebsd.org/chv.cgi?CH=169011
Change 169011 by yohanes at econa on 2009/09/29 15:00:27
sync latest source
Affected files ...
.. //depot/projects/str91xx/doc/el_GR.ISO8859-7/books/handbook/kernelconfig/chapter.sgml#2 integrate
.. //depot/projects/str91xx/ports/MOVED#8 integrate
.. //depot/projects/str91xx/src/lib/libc/sys/fcntl.2#2 integrate
.. //depot/projects/str91xx/src/share/man/man4/msk.4#3 integrate
.. //depot/projects/str91xx/src/share/man/man7/tuning.7#3 integrate
.. //depot/projects/str91xx/src/share/zoneinfo/asia#5 integrate
.. //depot/projects/str91xx/src/share/zoneinfo/southamerica#2 integrate
.. //depot/projects/str91xx/src/sys/amd64/amd64/pmap.c#6 integrate
.. //depot/projects/str91xx/src/sys/arm/econa/econa_machdep.c#3 edit
.. //depot/projects/str91xx/src/sys/dev/alc/if_alc.c#3 integrate
.. //depot/projects/str91xx/src/sys/dev/drm/r600_blit.c#3 integrate
.. //depot/projects/str91xx/src/sys/dev/drm/radeon_cs.c#2 integrate
.. //depot/projects/str91xx/src/sys/dev/drm/radeon_drv.h#4 integrate
.. //depot/projects/str91xx/src/sys/dev/drm/radeon_irq.c#3 integrate
.. //depot/projects/str91xx/src/sys/dev/drm/radeon_state.c#3 integrate
.. //depot/projects/str91xx/src/sys/dev/fxp/if_fxp.c#5 integrate
.. //depot/projects/str91xx/src/sys/dev/jme/if_jme.c#3 integrate
.. //depot/projects/str91xx/src/sys/dev/mii/e1000phy.c#4 integrate
.. //depot/projects/str91xx/src/sys/dev/mii/e1000phyreg.h#3 integrate
.. //depot/projects/str91xx/src/sys/dev/msk/if_msk.c#4 integrate
.. //depot/projects/str91xx/src/sys/dev/msk/if_mskreg.h#3 integrate
.. //depot/projects/str91xx/src/sys/dev/sound/pci/hda/hda_reg.h#2 integrate
.. //depot/projects/str91xx/src/sys/dev/sound/pci/hda/hdac.c#5 integrate
.. //depot/projects/str91xx/src/sys/geom/part/g_part_ebr.c#2 integrate
.. //depot/projects/str91xx/src/sys/kern/kern_descrip.c#4 integrate
.. //depot/projects/str91xx/src/sys/kern/vfs_export.c#3 integrate
.. //depot/projects/str91xx/src/sys/kern/vfs_vnops.c#4 integrate
.. //depot/projects/str91xx/src/sys/rpc/rpcsec_gss/svc_rpcsec_gss.c#3 integrate
.. //depot/projects/str91xx/src/sys/sys/fcntl.h#3 integrate
Differences ...
==== //depot/projects/str91xx/doc/el_GR.ISO8859-7/books/handbook/kernelconfig/chapter.sgml#2 (text+ko) ====
@@ -4,10 +4,10 @@
The FreeBSD Greek Documentation Project
- $FreeBSD: doc/el_GR.ISO8859-7/books/handbook/kernelconfig/chapter.sgml,v 1.7 2009/05/15 15:49:44 manolis Exp $
+ $FreeBSD: doc/el_GR.ISO8859-7/books/handbook/kernelconfig/chapter.sgml,v 1.8 2009/09/28 17:25:46 manolis Exp $
%SOURCE% en_US.ISO8859-1/books/handbook/kernelconfig/chapter.sgml
- %SRCID% 1.192
+ %SRCID% 1.193
-->
@@ -654,10 +654,10 @@
ôçí åðéëïãÞ <option>-g</option>, åðéôñÝðïíôáò Ýôóé ôçí ÷ñÞóç ôïõò üôáí
äïèïýí óôï &man.gcc.1;.</para>
- <programlisting>options SCHED_4BSD # 4BSD scheduler</programlisting>
+ <programlisting>options SCHED_ULE # ULE scheduler</programlisting>
- <para>Ï ðáñáäïóéáêüò êáé ðñïåðéëåãìÝíïò scheduler ôïõ &os;. ÊñáôÞóôå ôçí
- åðéëïãÞ áõôÞ.</para>
+ <para>Ï ðñïåðéëåãìÝíïò scheduler ôïõ &os;. ÊñáôÞóôå ôçí åðéëïãÞ
+ áõôÞ.</para>
<programlisting>options PREEMPTION # Enable kernel thread preemption</programlisting>
==== //depot/projects/str91xx/ports/MOVED#8 (text+ko) ====
@@ -1,7 +1,7 @@
#
# MOVED - a list of (recently) moved or removed ports
#
-# $FreeBSD: ports/MOVED,v 1.1991 2009/09/24 20:56:23 miwi Exp $
+# $FreeBSD: ports/MOVED,v 1.1992 2009/09/28 15:40:04 nobutaka Exp $
#
# Each entry consists of a single line containing the following four
# fields in the order named, separated with the pipe (`|') character:
@@ -4179,3 +4179,4 @@
audio/gmpc-favorites||2009-09-24|Unmaintained upstream
audio/gmpc-autoplaylist||2009-09-24|Unmaintained upstream
audio/gmpc-stopbutton||2009-09-24|Unmaintained upstream
+mail/wanderlust-devel||2009-09-28|Port addition canceled
==== //depot/projects/str91xx/src/lib/libc/sys/fcntl.2#2 (text+ko) ====
@@ -26,9 +26,9 @@
.\" SUCH DAMAGE.
.\"
.\" @(#)fcntl.2 8.2 (Berkeley) 1/12/94
-.\" $FreeBSD: src/lib/libc/sys/fcntl.2,v 1.47 2008/03/26 15:23:07 dfr Exp $
+.\" $FreeBSD: src/lib/libc/sys/fcntl.2,v 1.48 2009/09/28 16:59:47 delphij Exp $
.\"
-.Dd March 8, 2008
+.Dd September 28, 2009
.Dt FCNTL 2
.Os
.Sh NAME
@@ -241,6 +241,22 @@
.Dv SA_RESTART
(see
.Xr sigaction 2 ) .
+.It Dv F_READAHEAD
+Set or clear the read ahead amount for sequential access to the third
+argument,
+.Fa arg ,
+which is rounded up to the nearest block size.
+A zero value in
+.Fa arg
+turns off read ahead.
+.It Dv F_RDAHEAD
+Equivalent to Darwin counterpart which sets read ahead amount of 128KB
+when the third argument,
+.Fa arg
+is non-zero.
+A zero value in
+.Fa arg
+turns off read ahead.
.El
.Pp
When a shared lock has been set on a segment of a file,
==== //depot/projects/str91xx/src/share/man/man4/msk.4#3 (text+ko) ====
@@ -22,9 +22,9 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD: src/share/man/man4/msk.4,v 1.9 2009/06/02 05:13:02 yongari Exp $
+.\" $FreeBSD: src/share/man/man4/msk.4,v 1.10 2009/09/28 21:15:57 yongari Exp $
.\"
-.Dd June 2, 2009
+.Dd September 28, 2009
.Dt MSK 4
.Os
.Sh NAME
@@ -158,6 +158,8 @@
.It
D-Link 550SX Gigabit Ethernet
.It
+D-Link 560SX Gigabit Ethernet
+.It
D-Link 560T Gigabit Ethernet
.It
Marvell Yukon 88E8021CU Gigabit Ethernet
==== //depot/projects/str91xx/src/share/man/man7/tuning.7#3 (text+ko) ====
@@ -21,7 +21,7 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD: src/share/man/man7/tuning.7,v 1.81 2009/06/23 20:57:27 kib Exp $
+.\" $FreeBSD: src/share/man/man7/tuning.7,v 1.82 2009/09/29 10:50:02 ru Exp $
.\"
.Dd January 23, 2009
.Dt TUNING 7
@@ -407,22 +407,27 @@
.Va vm.overcommit
sysctl defines the overcommit behaviour of the vm subsystem.
The virtual memory system always does accounting of the swap space
-reservation, both total for system and per-user. Corresponding values
+reservation, both total for system and per-user.
+Corresponding values
are available through sysctl
-.Va vm.swap_total,
+.Va vm.swap_total ,
that gives the total bytes available for swapping, and
-.Va vm.swap_reserved,
+.Va vm.swap_reserved ,
that gives number of bytes that may be needed to back all currently
allocated anonymous memory.
.Pp
Setting bit 0 of the
.Va vm.overcommit
sysctl causes the virtual memory system to return failure
-to the process when allocation of memory causes vm.swap_reserved
-to exceed vm.swap_total.
-Bit 1 of the sysctl enforces RLIMIT_SWAP limit
+to the process when allocation of memory causes
+.Va vm.swap_reserved
+to exceed
+.Va vm.swap_total .
+Bit 1 of the sysctl enforces
+.Dv RLIMIT_SWAP
+limit
(see
-.Xr getrlimit 2 ).
+.Xr getrlimit 2 ) .
Root is exempt from this limit.
Bit 2 allows to count most of the physical
memory as allocatable, except wired and free reserved pages
==== //depot/projects/str91xx/src/share/zoneinfo/asia#5 (text+ko) ====
@@ -1,5 +1,5 @@
# <pre>
-# @(#)asia 8.40
+# @(#)asia 8.41
# This file is in the public domain, so clarified as of
# 2009-05-17 by Arthur David Olson.
@@ -1674,8 +1674,15 @@
# advance clocks in the country by one hour from April 15 to
# conserve energy"
-# From Arthur David Olson (2009-04-10):
-# Assume for now that Pakistan will end DST in 2009 as it did in 2008.
+# From Steffen Thorsen (2009-09-17):
+# "The News International," Pakistan reports that: "The Federal
+# Government has decided to restore the previous time by moving the
+# clocks backward by one hour from October 1. A formal announcement to
+# this effect will be made after the Prime Minister grants approval in
+# this regard."
+# <a href="http://www.thenews.com.pk/updates.asp?id=87168">
+# http://www.thenews.com.pk/updates.asp?id=87168
+# </a>
# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
Rule Pakistan 2002 only - Apr Sun>=2 0:01 1:00 S
@@ -1683,7 +1690,7 @@
Rule Pakistan 2008 only - Jun 1 0:00 1:00 S
Rule Pakistan 2008 only - Nov 1 0:00 0 -
Rule Pakistan 2009 only - Apr 15 0:00 1:00 S
-Rule Pakistan 2009 only - Nov 1 0:00 0 -
+Rule Pakistan 2009 only - Oct 1 0:00 0 -
# Zone NAME GMTOFF RULES FORMAT [UNTIL]
Zone Asia/Karachi 4:28:12 - LMT 1907
5:30 - IST 1942 Sep
==== //depot/projects/str91xx/src/share/zoneinfo/southamerica#2 (text+ko) ====
@@ -1,5 +1,5 @@
# <pre>
-# @(#)southamerica 8.36
+# @(#)southamerica 8.37
# This file is in the public domain, so clarified as of
# 2009-05-17 by Arthur David Olson.
@@ -397,7 +397,37 @@
# is that "The province will most likely follow the next daylight saving schedule,
# which is planned for the second Sunday in October."
+# From Alexander Krivenyshev (2009-09-19):
+# Some Argentinian Provinces (Buenos Aires, Entre Ríos) are opposing to the
+# Daylight Saving Time for the 2009-2010 season.
+#
+# (Spanish)
+# "El cambio de huso horario en Entre Ríos deberá ser aprobado por la
+# Legislatura":
+# <a href="http://www.analisisdigital.com.ar/noticias.php?ed=1&di=0&no=110168">
+# http://www.analisisdigital.com.ar/noticias.php?ed=1&di=0&no=110168
+# </a>
+# English translation - "The time zone change in Entre Rios must be approved by
+# the Legislature."
+#
+# (Spanish)
+# "Mar del Plata no quiere cambiar la hora."
+# <a href="http://www.mensajeroweb.com.ar/index.php?x=nota/33861/1/mar-del-plata-no-quiere-cambiar-la-hora">
+# http://www.mensajeroweb.com.ar/index.php?x=nota/33861/1/mar-del-plata-no-quiere-cambiar-la-hora
+# </a>
+# English translation - "Mar del Plata is not to change the time"
#
+# or
+# (some English translation)
+# <a href="http://www.worldtimezone.com/dst_news/dst_news_argentina07.html">
+# http://www.worldtimezone.com/dst_news/dst_news_argentina07.html
+# </a>
+
+# From Arthur David Olson (2009-09-22):
+# "Mar del Plata no quiere cambiar la hora" translates to
+# "Mar del Plata doesn't want to change the time"
+# (less definitive than "is not to").
+
# Zone NAME GMTOFF RULES FORMAT [UNTIL]
#
# Buenos Aires (BA), Capital Federal (CF),
==== //depot/projects/str91xx/src/sys/amd64/amd64/pmap.c#6 (text+ko) ====
@@ -77,7 +77,7 @@
*/
#include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/amd64/amd64/pmap.c,v 1.673 2009/09/18 17:09:33 alc Exp $");
+__FBSDID("$FreeBSD: src/sys/amd64/amd64/pmap.c,v 1.674 2009/09/28 17:10:27 alc Exp $");
/*
* Manages physical address maps.
@@ -442,7 +442,7 @@
if (ndmpdp < 4) /* Minimum 4GB of dirmap */
ndmpdp = 4;
DMPDPphys = allocpages(firstaddr, NDMPML4E);
- if ((amd_feature & AMDID_PAGE1GB) == 0)
+ if (TRUE || (amd_feature & AMDID_PAGE1GB) == 0)
DMPDphys = allocpages(firstaddr, ndmpdp);
dmaplimit = (vm_paddr_t)ndmpdp << PDPSHIFT;
@@ -476,7 +476,7 @@
/* Now set up the direct map space using either 2MB or 1GB pages */
/* Preset PG_M and PG_A because demotion expects it */
- if ((amd_feature & AMDID_PAGE1GB) == 0) {
+ if (TRUE || (amd_feature & AMDID_PAGE1GB) == 0) {
for (i = 0; i < NPDEPG * ndmpdp; i++) {
((pd_entry_t *)DMPDphys)[i] = (vm_paddr_t)i << PDRSHIFT;
((pd_entry_t *)DMPDphys)[i] |= PG_RW | PG_V | PG_PS |
==== //depot/projects/str91xx/src/sys/arm/econa/econa_machdep.c#3 (text+ko) ====
@@ -201,7 +201,7 @@
boot_arg1 = arg;
boot_arg2 = arg2;
boothowto = RB_VERBOSE;
- boothowto |= RB_SINGLE;
+ //boothowto |= RB_SINGLE;
set_cpufuncs();
lastaddr = fake_preload_metadata();
==== //depot/projects/str91xx/src/sys/dev/alc/if_alc.c#3 (text+ko) ====
@@ -28,7 +28,7 @@
/* Driver for Atheros AR8131/AR8132 PCIe Ethernet. */
#include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/dev/alc/if_alc.c,v 1.4 2009/08/24 20:37:15 yongari Exp $");
+__FBSDID("$FreeBSD: src/sys/dev/alc/if_alc.c,v 1.5 2009/09/28 22:18:38 yongari Exp $");
#include <sys/param.h>
#include <sys/systm.h>
@@ -234,6 +234,16 @@
if (phy != sc->alc_phyaddr)
return (0);
+ /*
+ * For AR8132 fast ethernet controller, do not report 1000baseT
+ * capability to mii(4). Even though AR8132 uses the same
+ * model/revision number of F1 gigabit PHY, the PHY has no
+ * ability to establish 1000baseT link.
+ */
+ if ((sc->alc_flags & ALC_FLAG_FASTETHER) != 0 &&
+ reg == MII_EXTSR)
+ return (0);
+
CSR_WRITE_4(sc, ALC_MDIO, MDIO_OP_EXECUTE | MDIO_OP_READ |
MDIO_SUP_PREAMBLE | MDIO_CLK_25_4 | MDIO_REG_ADDR(reg));
for (i = ALC_PHY_TIMEOUT; i > 0; i--) {
==== //depot/projects/str91xx/src/sys/dev/drm/r600_blit.c#3 (text+ko) ====
@@ -25,7 +25,7 @@
*/
#include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/dev/drm/r600_blit.c,v 1.2 2009/09/13 11:10:38 rnoland Exp $");
+__FBSDID("$FreeBSD: src/sys/dev/drm/r600_blit.c,v 1.3 2009/09/28 22:38:44 rnoland Exp $");
#include "dev/drm/drmP.h"
#include "dev/drm/drm.h"
@@ -1876,7 +1876,7 @@
/* dst */
set_render_target(dev_priv, COLOR_8_8_8_8,
- dst_x + cur_size, h,
+ (dst_x + cur_size) / 4, h,
dst_gpu_addr);
/* scissors */
==== //depot/projects/str91xx/src/sys/dev/drm/radeon_cs.c#2 (text+ko) ====
@@ -26,7 +26,7 @@
*/
#include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/dev/drm/radeon_cs.c,v 1.1 2009/08/23 14:55:57 rnoland Exp $");
+__FBSDID("$FreeBSD: src/sys/dev/drm/radeon_cs.c,v 1.2 2009/09/28 22:41:28 rnoland Exp $");
#include "dev/drm/drmP.h"
#include "dev/drm/radeon_drm.h"
#include "dev/drm/radeon_drv.h"
@@ -403,8 +403,8 @@
DRM_ERROR("bad DRAW_INDEX\n");
break;
}
- ib_chunk->kdata[offset_dw + 1] = (offset & 0xffffffff);
- ib_chunk->kdata[offset_dw + 2] = (upper_32_bits(offset) & 0xff);
+ ib_chunk->kdata[offset_dw + 1] += (offset & 0xffffffff);
+ ib_chunk->kdata[offset_dw + 2] += (upper_32_bits(offset) & 0xff);
break;
case R600_IT_DRAW_INDEX_AUTO:
//DRM_INFO("R600_IT_DRAW_INDEX_AUTO\n");
@@ -433,8 +433,8 @@
DRM_ERROR("bad WAIT_REG_MEM\n");
break;
}
- ib_chunk->kdata[offset_dw + 2] = (offset & 0xffffffff);
- ib_chunk->kdata[offset_dw + 3] = (upper_32_bits(offset) & 0xff);
+ ib_chunk->kdata[offset_dw + 2] += (offset & 0xffffffff);
+ ib_chunk->kdata[offset_dw + 3] += (upper_32_bits(offset) & 0xff);
}
if (ret)
DRM_ERROR("bad WAIT_REG_MEM\n");
@@ -469,7 +469,7 @@
break;
}
ib_chunk->kdata[offset_dw + 2] += (offset & 0xffffffff);
- ib_chunk->kdata[offset_dw + 3] |= (upper_32_bits(offset) & 0xff);
+ ib_chunk->kdata[offset_dw + 3] += (upper_32_bits(offset) & 0xff);
}
if (ret)
DRM_ERROR("bad EVENT_WRITE\n");
@@ -488,7 +488,7 @@
break;
}
ib_chunk->kdata[offset_dw + 2] += (offset & 0xffffffff);
- ib_chunk->kdata[offset_dw + 3] |= (upper_32_bits(offset) & 0xff);
+ ib_chunk->kdata[offset_dw + 3] += (upper_32_bits(offset) & 0xff);
break;
case R600_IT_SET_CONFIG_REG:
//DRM_INFO("R600_IT_SET_CONFIG_REG\n");
@@ -628,7 +628,7 @@
if (ret)
break;
ib_chunk->kdata[offset_dw + (i * 7) + 0 + 2] += (offset & 0xffffffff);
- ib_chunk->kdata[offset_dw + (i * 7) + 2 + 2] |= (upper_32_bits(offset) & 0xff);
+ ib_chunk->kdata[offset_dw + (i * 7) + 2 + 2] += (upper_32_bits(offset) & 0xff);
break;
}
if (ret)
==== //depot/projects/str91xx/src/sys/dev/drm/radeon_drv.h#4 (text+ko) ====
@@ -29,7 +29,7 @@
*/
#include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/dev/drm/radeon_drv.h,v 1.26 2009/08/23 15:02:58 rnoland Exp $");
+__FBSDID("$FreeBSD: src/sys/dev/drm/radeon_drv.h,v 1.27 2009/09/28 22:40:29 rnoland Exp $");
#ifndef __RADEON_DRV_H__
#define __RADEON_DRV_H__
@@ -143,15 +143,15 @@
CHIP_R600,
CHIP_RV610,
CHIP_RV630,
+ CHIP_RV670,
CHIP_RV620,
CHIP_RV635,
- CHIP_RV670,
CHIP_RS780,
CHIP_RS880,
CHIP_RV770,
- CHIP_RV740,
CHIP_RV730,
CHIP_RV710,
+ CHIP_RV740,
CHIP_LAST,
};
==== //depot/projects/str91xx/src/sys/dev/drm/radeon_irq.c#3 (text+ko) ====
@@ -31,7 +31,7 @@
*/
#include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/dev/drm/radeon_irq.c,v 1.15 2009/06/25 16:17:07 rnoland Exp $");
+__FBSDID("$FreeBSD: src/sys/dev/drm/radeon_irq.c,v 1.16 2009/09/28 22:37:07 rnoland Exp $");
#include "dev/drm/drmP.h"
#include "dev/drm/drm.h"
@@ -194,6 +194,9 @@
u32 r500_disp_int;
u32 tmp;
+ if ((dev_priv->flags & RADEON_FAMILY_MASK) >= CHIP_R600)
+ return IRQ_NONE;
+
/* Only consider the bits we're interested in - others could be used
* outside the DRM
*/
@@ -323,6 +326,9 @@
drm_radeon_irq_emit_t *emit = data;
int result;
+ if ((dev_priv->flags & RADEON_FAMILY_MASK) >= CHIP_R600)
+ return -EINVAL;
+
LOCK_TEST_WITH_RETURN(dev, file_priv);
if (!dev_priv) {
@@ -363,6 +369,9 @@
(drm_radeon_private_t *) dev->dev_private;
u32 dummy;
+ if ((dev_priv->flags & RADEON_FAMILY_MASK) >= CHIP_R600)
+ return;
+
/* Disable *all* interrupts */
if ((dev_priv->flags & RADEON_FAMILY_MASK) >= CHIP_RS600)
RADEON_WRITE(R500_DxMODE_INT_MASK, 0);
@@ -380,6 +389,9 @@
atomic_set(&dev_priv->swi_emitted, 0);
DRM_INIT_WAITQUEUE(&dev_priv->swi_queue);
+ if ((dev_priv->flags & RADEON_FAMILY_MASK) >= CHIP_R600)
+ return 0;
+
radeon_irq_set_state(dev, RADEON_SW_INT_ENABLE, 1);
return 0;
@@ -394,6 +406,9 @@
dev_priv->irq_enabled = 0;
+ if ((dev_priv->flags & RADEON_FAMILY_MASK) >= CHIP_R600)
+ return;
+
if ((dev_priv->flags & RADEON_FAMILY_MASK) >= CHIP_RS600)
RADEON_WRITE(R500_DxMODE_INT_MASK, 0);
/* Disable *all* interrupts */
==== //depot/projects/str91xx/src/sys/dev/drm/radeon_state.c#3 (text+ko) ====
@@ -27,7 +27,7 @@
*/
#include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/dev/drm/radeon_state.c,v 1.26 2009/08/23 15:02:58 rnoland Exp $");
+__FBSDID("$FreeBSD: src/sys/dev/drm/radeon_state.c,v 1.27 2009/09/28 22:37:07 rnoland Exp $");
#include "dev/drm/drmP.h"
#include "dev/drm/drm.h"
@@ -3024,7 +3024,10 @@
value = GET_SCRATCH(dev_priv, 2);
break;
case RADEON_PARAM_IRQ_NR:
- value = dev->irq;
+ if ((dev_priv->flags & RADEON_FAMILY_MASK) >= CHIP_R600)
+ value = 0;
+ else
+ value = dev->irq;
break;
case RADEON_PARAM_GART_BASE:
value = dev_priv->gart_vm_start;
==== //depot/projects/str91xx/src/sys/dev/fxp/if_fxp.c#5 (text+ko) ====
@@ -28,7 +28,7 @@
*/
#include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/dev/fxp/if_fxp.c,v 1.297 2009/09/08 13:19:05 phk Exp $");
+__FBSDID("$FreeBSD: src/sys/dev/fxp/if_fxp.c,v 1.298 2009/09/28 19:40:16 yongari Exp $");
/*
* Intel EtherExpress Pro/100B PCI Fast Ethernet driver
@@ -631,8 +631,11 @@
}
/* For 82559 or later chips, Rx checksum offload is supported. */
- if (sc->revision >= FXP_REV_82559_A0)
- sc->flags |= FXP_FLAG_82559_RXCSUM;
+ if (sc->revision >= FXP_REV_82559_A0) {
+ /* 82559ER does not support Rx checksum offloading. */
+ if (sc->ident->devid != 0x1209)
+ sc->flags |= FXP_FLAG_82559_RXCSUM;
+ }
/*
* Enable use of extended RFDs and TCBs for 82550
* and later chips. Note: we need extended TXCB support
==== //depot/projects/str91xx/src/sys/dev/jme/if_jme.c#3 (text+ko) ====
@@ -26,7 +26,7 @@
*/
#include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/dev/jme/if_jme.c,v 1.11 2009/06/26 11:45:06 rwatson Exp $");
+__FBSDID("$FreeBSD: src/sys/dev/jme/if_jme.c,v 1.12 2009/09/28 19:33:52 yongari Exp $");
#include <sys/param.h>
#include <sys/systm.h>
@@ -306,6 +306,10 @@
sc = ifp->if_softc;
JME_LOCK(sc);
+ if ((ifp->if_flags & IFF_UP) == 0) {
+ JME_UNLOCK(sc);
+ return;
+ }
mii = device_get_softc(sc->jme_miibus);
mii_pollstat(mii);
@@ -1585,8 +1589,10 @@
pmc + PCIR_POWER_STATUS, pmstat, 2);
}
ifp = sc->jme_ifp;
- if ((ifp->if_flags & IFF_UP) != 0)
+ if ((ifp->if_flags & IFF_UP) != 0) {
+ ifp->if_drv_flags &= ~IFF_DRV_RUNNING;
jme_init_locked(sc);
+ }
JME_UNLOCK(sc);
@@ -1861,6 +1867,7 @@
if ((sc->jme_flags & JME_FLAG_LINK) == 0) {
if_printf(sc->jme_ifp, "watchdog timeout (missed link)\n");
ifp->if_oerrors++;
+ ifp->if_drv_flags &= ~IFF_DRV_RUNNING;
jme_init_locked(sc);
return;
}
@@ -1875,6 +1882,7 @@
if_printf(sc->jme_ifp, "watchdog timeout\n");
ifp->if_oerrors++;
+ ifp->if_drv_flags &= ~IFF_DRV_RUNNING;
jme_init_locked(sc);
if (!IFQ_DRV_IS_EMPTY(&ifp->if_snd))
taskqueue_enqueue(sc->jme_tq, &sc->jme_tx_task);
@@ -1917,8 +1925,10 @@
VLAN_CAPABILITIES(ifp);
}
ifp->if_mtu = ifr->ifr_mtu;
- if ((ifp->if_drv_flags & IFF_DRV_RUNNING) != 0)
+ if ((ifp->if_drv_flags & IFF_DRV_RUNNING) != 0) {
+ ifp->if_drv_flags &= ~IFF_DRV_RUNNING;
jme_init_locked(sc);
+ }
JME_UNLOCK(sc);
}
break;
@@ -2642,6 +2652,8 @@
ifp = sc->jme_ifp;
mii = device_get_softc(sc->jme_miibus);
+ if ((ifp->if_drv_flags & IFF_DRV_RUNNING) != 0)
+ return;
/*
* Cancel any pending I/O.
*/
==== //depot/projects/str91xx/src/sys/dev/mii/e1000phy.c#4 (text+ko) ====
@@ -30,7 +30,7 @@
*/
#include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/dev/mii/e1000phy.c,v 1.31 2009/08/18 20:20:15 yongari Exp $");
+__FBSDID("$FreeBSD: src/sys/dev/mii/e1000phy.c,v 1.34 2009/09/28 21:03:28 yongari Exp $");
/*
* driver for the Marvell 88E1000 series external 1000/100/10-BT PHY.
@@ -59,6 +59,9 @@
#include "miidevs.h"
#include <dev/mii/e1000phyreg.h>
+/* XXX */
+#include <machine/bus.h>
+#include <dev/msk/if_mskreg.h>
#include "miibus_if.h"
@@ -68,6 +71,7 @@
struct e1000phy_softc {
struct mii_softc mii_sc;
int mii_model;
+ struct msk_mii_data *mmd;
};
static device_method_t e1000phy_methods[] = {
@@ -130,6 +134,7 @@
struct mii_softc *sc;
struct mii_attach_args *ma;
struct mii_data *mii;
+ struct ifnet *ifp;
esc = device_get_softc(dev);
sc = &esc->mii_sc;
@@ -145,6 +150,16 @@
mii->mii_instance++;
esc->mii_model = MII_MODEL(ma->mii_id2);
+ ifp = sc->mii_pdata->mii_ifp;
+ if (strcmp(ifp->if_dname, "msk") == 0) {
+ /* XXX */
+ esc->mmd = device_get_ivars(
+ device_get_parent(device_get_parent(dev)));
+ if (esc->mmd != NULL &&
+ (esc->mmd->mii_flags & MIIF_HAVEFIBER) != 0)
+ sc->mii_flags |= MIIF_HAVEFIBER;
+ }
+
switch (esc->mii_model) {
case MII_MODEL_MARVELL_E1011:
case MII_MODEL_MARVELL_E1112:
@@ -199,6 +214,13 @@
reg &= ~E1000_SCR_MODE_MASK;
reg |= E1000_SCR_MODE_1000BX;
PHY_WRITE(sc, E1000_SCR, reg);
+ if (esc->mmd != NULL && esc->mmd->pmd == 'P') {
+ /* Set SIGDET polarity low for SFP module. */
+ PHY_WRITE(sc, E1000_EADR, 1);
+ reg = PHY_READ(sc, E1000_SCR);
+ reg |= E1000_SCR_FIB_SIGDET_POLARITY;
+ PHY_WRITE(sc, E1000_SCR, reg);
+ }
PHY_WRITE(sc, E1000_EADR, page);
}
} else {
@@ -248,7 +270,7 @@
}
}
- switch (MII_MODEL(esc->mii_model)) {
+ switch (esc->mii_model) {
case MII_MODEL_MARVELL_E3082:
case MII_MODEL_MARVELL_E1112:
case MII_MODEL_MARVELL_E1118:
@@ -485,8 +507,11 @@
return;
}
} else {
- if (ssr & E1000_SSR_1000MBS)
- mii->mii_media_active |= IFM_1000_SX;
+ /*
+ * Some fiber PHY(88E1112) does not seem to set resolved
+ * speed so always assume we've got IFM_1000_SX.
+ */
+ mii->mii_media_active |= IFM_1000_SX;
}
if (ssr & E1000_SSR_DUPLEX)
==== //depot/projects/str91xx/src/sys/dev/mii/e1000phyreg.h#3 (text+ko) ====
@@ -1,4 +1,4 @@
-/* $FreeBSD: src/sys/dev/mii/e1000phyreg.h,v 1.7 2009/06/02 00:30:30 yongari Exp $ */
+/* $FreeBSD: src/sys/dev/mii/e1000phyreg.h,v 1.8 2009/09/28 21:03:28 yongari Exp $ */
/*-
* Principal Author: Parag Patel
* Copyright (c) 2001
@@ -248,6 +248,11 @@
#define E1000_SCR_EN_DETECT_MASK 0x0300
+/* 88E1112 page 1 fiber specific control */
+#define E1000_SCR_FIB_TX_DIS 0x0008
+#define E1000_SCR_FIB_SIGDET_POLARITY 0x0200
+#define E1000_SCR_FIB_FORCE_LINK 0x0400
+
/* 88E1112 page 2 */
#define E1000_SCR_MODE_MASK 0x0380
#define E1000_SCR_MODE_AUTO 0x0180
==== //depot/projects/str91xx/src/sys/dev/msk/if_msk.c#4 (text+ko) ====
@@ -99,7 +99,7 @@
*/
#include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/dev/msk/if_msk.c,v 1.66 2009/09/08 13:19:05 phk Exp $");
+__FBSDID("$FreeBSD: src/sys/dev/msk/if_msk.c,v 1.70 2009/09/28 21:11:31 yongari Exp $");
#include <sys/param.h>
#include <sys/systm.h>
@@ -223,6 +223,8 @@
"Marvell Yukon 88E8072 Gigabit Ethernet" },
{ VENDORID_DLINK, DEVICEID_DLINK_DGE550SX,
"D-Link 550SX Gigabit Ethernet" },
+ { VENDORID_DLINK, DEVICEID_DLINK_DGE560SX,
+ "D-Link 560SX Gigabit Ethernet" },
{ VENDORID_DLINK, DEVICEID_DLINK_DGE560T,
"D-Link 560T Gigabit Ethernet" }
};
@@ -1445,6 +1447,7 @@
struct msk_softc *sc;
struct msk_if_softc *sc_if;
struct ifnet *ifp;
+ struct msk_mii_data *mmd;
int i, port, error;
uint8_t eaddr[6];
@@ -1454,7 +1457,8 @@
error = 0;
sc_if = device_get_softc(dev);
sc = device_get_softc(device_get_parent(dev));
- port = *(int *)device_get_ivars(dev);
+ mmd = device_get_ivars(dev);
+ port = mmd->port;
sc_if->msk_if_dev = dev;
sc_if->msk_port = port;
@@ -1600,7 +1604,8 @@
mskc_attach(device_t dev)
{
struct msk_softc *sc;
- int error, msic, msir, *port, reg;
+ struct msk_mii_data *mmd;
+ int error, msic, msir, reg;
sc = device_get_softc(dev);
sc->msk_dev = dev;
@@ -1669,10 +1674,6 @@
CSR_WRITE_2(sc, B0_CTST, CS_RST_SET);
CSR_WRITE_2(sc, B0_CTST, CS_RST_CLR);
sc->msk_pmd = CSR_READ_1(sc, B2_PMD_TYP);
- if (sc->msk_pmd == 'L' || sc->msk_pmd == 'S')
- sc->msk_coppertype = 0;
- else
- sc->msk_coppertype = 1;
/* Check number of MACs. */
sc->msk_num_port = 1;
if ((CSR_READ_1(sc, B2_Y2_HW_RES) & CFG_DUAL_MAC_MSK) ==
@@ -1812,15 +1813,18 @@
error = ENXIO;
goto fail;
}
- port = malloc(sizeof(int), M_DEVBUF, M_WAITOK);
- if (port == NULL) {
+ mmd = malloc(sizeof(struct msk_mii_data), M_DEVBUF, M_WAITOK | M_ZERO);
+ if (mmd == NULL) {
device_printf(dev, "failed to allocate memory for "
"ivars of PORT_A\n");
error = ENXIO;
goto fail;
}
- *port = MSK_PORT_A;
- device_set_ivars(sc->msk_devs[MSK_PORT_A], port);
+ mmd->port = MSK_PORT_A;
+ mmd->pmd = sc->msk_pmd;
+ if (sc->msk_pmd == 'L' || sc->msk_pmd == 'S' || sc->msk_pmd == 'P')
+ mmd->mii_flags |= MIIF_HAVEFIBER;
+ device_set_ivars(sc->msk_devs[MSK_PORT_A], mmd);
if (sc->msk_num_port > 1) {
sc->msk_devs[MSK_PORT_B] = device_add_child(dev, "msk", -1);
@@ -1829,15 +1833,18 @@
error = ENXIO;
goto fail;
}
- port = malloc(sizeof(int), M_DEVBUF, M_WAITOK);
- if (port == NULL) {
+ mmd = malloc(sizeof(struct msk_mii_data), M_DEVBUF, M_WAITOK | M_ZERO);
+ if (mmd == NULL) {
device_printf(dev, "failed to allocate memory for "
"ivars of PORT_B\n");
error = ENXIO;
goto fail;
}
- *port = MSK_PORT_B;
- device_set_ivars(sc->msk_devs[MSK_PORT_B], port);
+ mmd->port = MSK_PORT_B;
+ mmd->pmd = sc->msk_pmd;
+ if (sc->msk_pmd == 'L' || sc->msk_pmd == 'S' || sc->msk_pmd == 'P')
+ mmd->mii_flags |= MIIF_HAVEFIBER;
+ device_set_ivars(sc->msk_devs[MSK_PORT_B], mmd);
}
error = bus_generic_attach(dev);
@@ -3794,9 +3801,14 @@
/* Set receive filter. */
msk_rxfilter(sc_if);
- /* Flush Rx MAC FIFO on any flow control or error. */
- CSR_WRITE_4(sc, MR_ADDR(sc_if->msk_port, RX_GMF_FL_MSK),
- GMR_FS_ANY_ERR);
+ if (sc->msk_hw_id == CHIP_ID_YUKON_XL) {
+ /* Clear flush mask - HW bug. */
+ CSR_WRITE_4(sc, MR_ADDR(sc_if->msk_port, RX_GMF_FL_MSK), 0);
+ } else {
+ /* Flush Rx MAC FIFO on any flow control or error. */
+ CSR_WRITE_4(sc, MR_ADDR(sc_if->msk_port, RX_GMF_FL_MSK),
+ GMR_FS_ANY_ERR);
+ }
/*
* Set Rx FIFO flush threshold to 64 bytes + 1 FIFO word
@@ -4188,7 +4200,7 @@
gmac = GMAC_READ_2(sc, sc_if->msk_port, GM_PHY_ADDR);
GMAC_WRITE_2(sc, sc_if->msk_port, GM_PHY_ADDR, gmac | GM_PAR_MIB_CLR);
/* Read all MIB Counters with Clear Mode set. */
- for (i = GM_RXF_UC_OK; i <= GM_TXE_FIFO_UR; i++)
+ for (i = GM_RXF_UC_OK; i <= GM_TXE_FIFO_UR; i += sizeof(uint32_t))
reg = MSK_READ_MIB32(sc_if->msk_port, i);
/* Clear MIB Clear Counter Mode. */
gmac &= ~GM_PAR_MIB_CLR;
==== //depot/projects/str91xx/src/sys/dev/msk/if_mskreg.h#3 (text+ko) ====
@@ -93,7 +93,7 @@
* OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
*/
-/*$FreeBSD: src/sys/dev/msk/if_mskreg.h,v 1.27 2009/06/02 05:08:57 yongari Exp $*/
+/*$FreeBSD: src/sys/dev/msk/if_mskreg.h,v 1.29 2009/09/28 21:11:31 yongari Exp $*/
/*
* SysKonnect PCI vendor ID
@@ -148,6 +148,7 @@
* D-Link gigabit ethernet device ID
*/
#define DEVICEID_DLINK_DGE550SX 0x4001
+#define DEVICEID_DLINK_DGE560SX 0x4002
#define DEVICEID_DLINK_DGE560T 0x4b00
#define BIT_31 (1 << 31)
@@ -2403,6 +2404,12 @@
#define MSK_TX_TIMEOUT 5
#define MSK_PUT_WM 10
+struct msk_mii_data {
+ int port;
+ uint32_t pmd;
+ int mii_flags;
+};
+
/* Forward decl. */
struct msk_if_softc;
@@ -2466,7 +2473,6 @@
uint8_t msk_num_port;
int msk_ramsize; /* amount of SRAM on NIC */
uint32_t msk_pmd; /* physical media type */
- uint32_t msk_coppertype;
uint32_t msk_intrmask;
uint32_t msk_intrhwemask;
uint32_t msk_pflags;
==== //depot/projects/str91xx/src/sys/dev/sound/pci/hda/hda_reg.h#2 (text+ko) ====
@@ -23,7 +23,7 @@
* OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
* SUCH DAMAGE.
*
- * $FreeBSD: src/sys/dev/sound/pci/hda/hda_reg.h,v 1.3 2008/09/13 16:56:03 mav Exp $
+ * $FreeBSD: src/sys/dev/sound/pci/hda/hda_reg.h,v 1.4 2009/09/29 09:36:38 mav Exp $
*/
#ifndef _HDA_REG_H_
@@ -660,13 +660,49 @@
#define HDA_CMD_VERB_GET_STRIPE_CONTROL 0xf24
#define HDA_CMD_VERB_SET_STRIPE_CONTROL 0x724
-#define HDA_CMD_SET_STRIPE_CONTROL(cad, nid) \
+#define HDA_CMD_GET_STRIPE_CONTROL(cad, nid) \
(HDA_CMD_12BIT((cad), (nid), \
HDA_CMD_VERB_GET_STRIPE_CONTROL, 0x0))
-#define HDA_CMD_GET_STRIPE_CONTROL(cad, nid, payload) \
+#define HDA_CMD_SET_STRIPE_CONTROL(cad, nid, payload) \
(HDA_CMD_12BIT((cad), (nid), \
HDA_CMD_VERB_SET_STRIPE_CONTROL, (payload)))
+/* Channel Count Control */
+#define HDA_CMD_VERB_GET_CONV_CHAN_COUNT 0xf2d
+#define HDA_CMD_VERB_SET_CONV_CHAN_COUNT 0x72d
+
+#define HDA_CMD_GET_CONV_CHAN_COUNT(cad, nid) \
+ (HDA_CMD_12BIT((cad), (nid), \
+ HDA_CMD_VERB_GET_CONV_CHAN_COUNT, 0x0))
+#define HDA_CMD_SET_CONV_CHAN_COUNT(cad, nid, payload) \
+ (HDA_CMD_12BIT((cad), (nid), \
+ HDA_CMD_VERB_SET_CONV_CHAN_COUNT, (payload)))
+
+#define HDA_CMD_VERB_GET_HDMI_DIP_SIZE 0xf2e
+#define HDA_CMD_VERB_GET_HDMI_ELDD 0xf2f
+
+#define HDA_CMD_VERB_GET_HDMI_DIP_INDEX 0xf30
+#define HDA_CMD_VERB_SET_HDMI_DIP_INDEX 0x730
+
+#define HDA_CMD_VERB_GET_HDMI_DIP_DATA 0xf31
+#define HDA_CMD_VERB_SET_HDMI_DIP_DATA 0x731
+
+#define HDA_CMD_VERB_GET_HDMI_DIP_XMIT 0xf32
+#define HDA_CMD_VERB_SET_HDMI_DIP_XMIT 0x732
+
+#define HDA_CMD_VERB_GET_HDMI_CP_CTRL 0xf33
+#define HDA_CMD_VERB_SET_HDMI_CP_CTRL 0x733
+
+#define HDA_CMD_VERB_GET_HDMI_CHAN_SLOT 0xf34
+#define HDA_CMD_VERB_SET_HDMI_CHAN_SLOT 0x734
+
+#define HDA_CMD_GET_HDMI_CHAN_SLOT(cad, nid) \
+ (HDA_CMD_12BIT((cad), (nid), \
+ HDA_CMD_VERB_GET_HDMI_CHAN_SLOT, 0x0))
+#define HDA_CMD_SET_HDMI_CHAN_SLOT(cad, nid, payload) \
+ (HDA_CMD_12BIT((cad), (nid), \
+ HDA_CMD_VERB_SET_HDMI_CHAN_SLOT, (payload)))
+
/* Function Reset */
#define HDA_CMD_VERB_FUNCTION_RESET 0x7ff
@@ -779,6 +815,10 @@
#define HDA_PARAM_AUDIO_WIDGET_CAP_TYPE_SHIFT 20
#define HDA_PARAM_AUDIO_WIDGET_CAP_DELAY_MASK 0x000f0000
#define HDA_PARAM_AUDIO_WIDGET_CAP_DELAY_SHIFT 16
>>> TRUNCATED FOR MAIL (1000 lines) <<<
More information about the p4-projects
mailing list