svn commit: r238873 - in head/sys: arm/mv arm/mv/kirkwood dev/cesa
dev/mge dev/mvs
Hiroki Sato
hrs at FreeBSD.org
Sat Jul 28 21:56:25 UTC 2012
Author: hrs
Date: Sat Jul 28 21:56:24 2012
New Revision: 238873
URL: http://svn.freebsd.org/changeset/base/238873
Log:
Add support for Marvell 88F6282.
Sponsored by: Plat'Home, Co.,Ltd.
Modified:
head/sys/arm/mv/common.c
head/sys/arm/mv/gpio.c
head/sys/arm/mv/ic.c
head/sys/arm/mv/kirkwood/kirkwood.c
head/sys/arm/mv/mv_sata.c
head/sys/arm/mv/mvreg.h
head/sys/dev/cesa/cesa.c
head/sys/dev/mge/if_mge.c
head/sys/dev/mvs/mvs_soc.c
Modified: head/sys/arm/mv/common.c
==============================================================================
--- head/sys/arm/mv/common.c Sat Jul 28 21:43:29 2012 (r238872)
+++ head/sys/arm/mv/common.c Sat Jul 28 21:56:24 2012 (r238873)
@@ -251,7 +251,9 @@ cpu_extra_feat(void)
uint32_t ef = 0;
soc_id(&dev, &rev);
- if (dev == MV_DEV_88F6281 || dev == MV_DEV_MV78100_Z0 ||
+ if (dev == MV_DEV_88F6281 ||
+ dev == MV_DEV_88F6282 ||
+ dev == MV_DEV_MV78100_Z0 ||
dev == MV_DEV_MV78100)
__asm __volatile("mrc p15, 1, %0, c15, c1, 0" : "=r" (ef));
else if (dev == MV_DEV_88F5182 || dev == MV_DEV_88F5281)
@@ -351,6 +353,13 @@ soc_identify(void)
else if (r == 3)
rev = "A1";
break;
+ case MV_DEV_88F6282:
+ dev = "Marvell 88F6282";
+ if (r == 0)
+ rev = "A0";
+ else if (r == 1)
+ rev = "A1";
+ break;
case MV_DEV_MV78100_Z0:
dev = "Marvell MV78100 Z0";
break;
@@ -536,6 +545,7 @@ win_cpu_can_remap(int i)
if ((dev == MV_DEV_88F5182 && i < 2) ||
(dev == MV_DEV_88F5281 && i < 4) ||
(dev == MV_DEV_88F6281 && i < 4) ||
+ (dev == MV_DEV_88F6282 && i < 4) ||
(dev == MV_DEV_MV78100 && i < 8) ||
(dev == MV_DEV_MV78100_Z0 && i < 8))
return (1);
@@ -1320,7 +1330,8 @@ xor_max_eng(void)
uint32_t dev, rev;
soc_id(&dev, &rev);
- if (dev == MV_DEV_88F6281)
+ if (dev == MV_DEV_88F6281 ||
+ dev == MV_DEV_88F6282)
return (2);
else if ((dev == MV_DEV_MV78100) || (dev == MV_DEV_MV78100_Z0))
return (1);
Modified: head/sys/arm/mv/gpio.c
==============================================================================
--- head/sys/arm/mv/gpio.c Sat Jul 28 21:43:29 2012 (r238872)
+++ head/sys/arm/mv/gpio.c Sat Jul 28 21:56:24 2012 (r238873)
@@ -155,7 +155,8 @@ mv_gpio_attach(device_t dev)
sc->pin_num = 32;
sc->irq_num = 4;
- } else if (dev_id == MV_DEV_88F6281) {
+ } else if (dev_id == MV_DEV_88F6281 ||
+ dev_id == MV_DEV_88F6282) {
sc->pin_num = 50;
sc->irq_num = 7;
Modified: head/sys/arm/mv/ic.c
==============================================================================
--- head/sys/arm/mv/ic.c Sat Jul 28 21:43:29 2012 (r238872)
+++ head/sys/arm/mv/ic.c Sat Jul 28 21:56:24 2012 (r238873)
@@ -105,7 +105,9 @@ mv_ic_attach(device_t dev)
sc->ic_high_regs = 0;
sc->ic_error_regs = 0;
- if (dev_id == MV_DEV_88F6281 || dev_id == MV_DEV_MV78100 ||
+ if (dev_id == MV_DEV_88F6281 ||
+ dev_id == MV_DEV_88F6282 ||
+ dev_id == MV_DEV_MV78100 ||
dev_id == MV_DEV_MV78100_Z0)
sc->ic_high_regs = 1;
Modified: head/sys/arm/mv/kirkwood/kirkwood.c
==============================================================================
--- head/sys/arm/mv/kirkwood/kirkwood.c Sat Jul 28 21:43:29 2012 (r238872)
+++ head/sys/arm/mv/kirkwood/kirkwood.c Sat Jul 28 21:56:24 2012 (r238873)
@@ -74,6 +74,8 @@ get_tclk(void)
soc_id(&dev, &rev);
if (dev == MV_DEV_88F6281 && (rev == 2 || rev == 3))
return (TCLK_200MHZ);
+ if (dev == MV_DEV_88F6282)
+ return (TCLK_200MHZ);
return (TCLK_166MHZ);
}
Modified: head/sys/arm/mv/mv_sata.c
==============================================================================
--- head/sys/arm/mv/mv_sata.c Sat Jul 28 21:43:29 2012 (r238872)
+++ head/sys/arm/mv/mv_sata.c Sat Jul 28 21:56:24 2012 (r238873)
@@ -197,6 +197,7 @@ sata_probe(device_t dev)
sc->sc_edma_qlen = 128;
break;
case MV_DEV_88F6281:
+ case MV_DEV_88F6282:
case MV_DEV_MV78100:
case MV_DEV_MV78100_Z0:
sc->sc_version = 2;
Modified: head/sys/arm/mv/mvreg.h
==============================================================================
--- head/sys/arm/mv/mvreg.h Sat Jul 28 21:43:29 2012 (r238872)
+++ head/sys/arm/mv/mvreg.h Sat Jul 28 21:56:24 2012 (r238873)
@@ -326,6 +326,7 @@
#define MV_DEV_88F5182 0x5182
#define MV_DEV_88F5281 0x5281
#define MV_DEV_88F6281 0x6281
+#define MV_DEV_88F6282 0x6282
#define MV_DEV_MV78100_Z0 0x6381
#define MV_DEV_MV78100 0x7810
Modified: head/sys/dev/cesa/cesa.c
==============================================================================
--- head/sys/dev/cesa/cesa.c Sat Jul 28 21:43:29 2012 (r238872)
+++ head/sys/dev/cesa/cesa.c Sat Jul 28 21:56:24 2012 (r238873)
@@ -1005,6 +1005,7 @@ cesa_attach(device_t dev)
switch (d) {
case MV_DEV_88F6281:
+ case MV_DEV_88F6282:
sc->sc_tperr = 0;
break;
case MV_DEV_MV78100:
Modified: head/sys/dev/mge/if_mge.c
==============================================================================
--- head/sys/dev/mge/if_mge.c Sat Jul 28 21:43:29 2012 (r238872)
+++ head/sys/dev/mge/if_mge.c Sat Jul 28 21:56:24 2012 (r238873)
@@ -258,7 +258,9 @@ mge_ver_params(struct mge_softc *sc)
uint32_t d, r;
soc_id(&d, &r);
- if (d == MV_DEV_88F6281 || d == MV_DEV_MV78100 ||
+ if (d == MV_DEV_88F6281 ||
+ d == MV_DEV_88F6282 ||
+ d == MV_DEV_MV78100 ||
d == MV_DEV_MV78100_Z0) {
sc->mge_ver = 2;
sc->mge_mtu = 0x4e8;
Modified: head/sys/dev/mvs/mvs_soc.c
==============================================================================
--- head/sys/dev/mvs/mvs_soc.c Sat Jul 28 21:43:29 2012 (r238872)
+++ head/sys/dev/mvs/mvs_soc.c Sat Jul 28 21:56:24 2012 (r238873)
@@ -63,6 +63,7 @@ static struct {
} mvs_ids[] = {
{MV_DEV_88F5182, 0x00, "Marvell 88F5182", 2, MVS_Q_GENIIE|MVS_Q_SOC},
{MV_DEV_88F6281, 0x00, "Marvell 88F6281", 2, MVS_Q_GENIIE|MVS_Q_SOC},
+ {MV_DEV_88F6282, 0x00, "Marvell 88F6282", 2, MVS_Q_GENIIE|MVS_Q_SOC},
{MV_DEV_MV78100, 0x00, "Marvell MV78100", 2, MVS_Q_GENIIE|MVS_Q_SOC},
{MV_DEV_MV78100_Z0, 0x00,"Marvell MV78100", 2, MVS_Q_GENIIE|MVS_Q_SOC},
{0, 0x00, NULL, 0, 0}
More information about the svn-src-head
mailing list