Module Name: src Committed By: jmcneill Date: Thu Jun 1 16:57:13 UTC 2017
Modified Files: src/sys/dev/ic: pl181.c Log Message: The sdmmc layer will send single requests up to MAXPHYS (65536) in size. The length field on PL180/PL181 is 16-bit, and can only support up to 65535 byte transfers. Workaround this for now by setting the SMC_CAPS_SINGLE_ONLY flag to only do single block (512-byte) transfers. While here set SMC_CAPS_4BIT_MODE as well. To generate a diff of this commit: cvs rdiff -u -r1.1 -r1.2 src/sys/dev/ic/pl181.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.
Modified files: Index: src/sys/dev/ic/pl181.c diff -u src/sys/dev/ic/pl181.c:1.1 src/sys/dev/ic/pl181.c:1.2 --- src/sys/dev/ic/pl181.c:1.1 Tue Jan 27 16:33:26 2015 +++ src/sys/dev/ic/pl181.c Thu Jun 1 16:57:12 2017 @@ -1,4 +1,4 @@ -/* $NetBSD: pl181.c,v 1.1 2015/01/27 16:33:26 jmcneill Exp $ */ +/* $NetBSD: pl181.c,v 1.2 2017/06/01 16:57:12 jmcneill Exp $ */ /*- * Copyright (c) 2015 Jared D. McNeill <jmcne...@invisible.ca> @@ -27,7 +27,7 @@ */ #include <sys/cdefs.h> -__KERNEL_RCSID(0, "$NetBSD: pl181.c,v 1.1 2015/01/27 16:33:26 jmcneill Exp $"); +__KERNEL_RCSID(0, "$NetBSD: pl181.c,v 1.2 2017/06/01 16:57:12 jmcneill Exp $"); #include <sys/param.h> #include <sys/bus.h> @@ -118,7 +118,7 @@ plmmc_init(struct plmmc_softc *sc) saa.saa_sch = sc; saa.saa_clkmin = 400; saa.saa_clkmax = sc->sc_clock_freq / 1000; - saa.saa_caps = 0; + saa.saa_caps = SMC_CAPS_4BIT_MODE | SMC_CAPS_SINGLE_ONLY; sc->sc_sdmmc_dev = config_found(sc->sc_dev, &saa, NULL); }