Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 22 Apr 2019 04:58:02 +0000 (UTC)
From:      Ian Lepore <ian@FreeBSD.org>
To:        src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-11@freebsd.org
Subject:   svn commit: r346525 - in stable/11: share/man/man4/man4.arm sys/arm/freescale/imx sys/modules/imx sys/modules/imx/imx6_ahci
Message-ID:  <201904220458.x3M4w2YQ030950@repo.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: ian
Date: Mon Apr 22 04:58:01 2019
New Revision: 346525
URL: https://svnweb.freebsd.org/changeset/base/346525

Log:
  MFC r336079:
  
  Add pnp info to imx6_ahci, and add a module makefile, and a manpage for it.

Added:
  stable/11/share/man/man4/man4.arm/imx6_ahci.4
     - copied unchanged from r336079, head/share/man/man4/man4.arm/imx6_ahci.4
  stable/11/sys/modules/imx/imx6_ahci/
     - copied from r336079, head/sys/modules/imx/imx6_ahci/
Modified:
  stable/11/share/man/man4/man4.arm/Makefile
  stable/11/sys/arm/freescale/imx/imx6_ahci.c
  stable/11/sys/modules/imx/Makefile
Directory Properties:
  stable/11/   (props changed)

Modified: stable/11/share/man/man4/man4.arm/Makefile
==============================================================================
--- stable/11/share/man/man4/man4.arm/Makefile	Mon Apr 22 04:56:41 2019	(r346524)
+++ stable/11/share/man/man4/man4.arm/Makefile	Mon Apr 22 04:58:01 2019	(r346525)
@@ -4,6 +4,7 @@ PACKAGE=runtime-manuals
 
 MAN=	cgem.4 \
 	devcfg.4 \
+	imx6_ahci.4 \
 	imx_wdog.4 \
 	mge.4 \
 	npe.4 \

Copied: stable/11/share/man/man4/man4.arm/imx6_ahci.4 (from r336079, head/share/man/man4/man4.arm/imx6_ahci.4)
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ stable/11/share/man/man4/man4.arm/imx6_ahci.4	Mon Apr 22 04:58:01 2019	(r346525, copy of r336079, head/share/man/man4/man4.arm/imx6_ahci.4)
@@ -0,0 +1,65 @@
+.\"
+.\" Copyright (c) 2018 Ian Lepore <ian@freebsd.org>
+.\" All rights reserved.
+.\"
+.\" Redistribution and use in source and binary forms, with or without
+.\" modification, are permitted provided that the following conditions
+.\" are met:
+.\"
+.\" 1. Redistributions of source code must retain the above copyright
+.\"    notice, this list of conditions and the following disclaimer.
+.\" 2. Redistributions in binary form must reproduce the above copyright
+.\"    notice, this list of conditions and the following disclaimer in the
+.\"    documentation and/or other materials provided with the distribution.
+.\"
+.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
+.\" IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
+.\" OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
+.\" IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT,
+.\" INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
+.\" NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+.\" DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+.\" THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
+.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+.\"
+.\" $FreeBSD$
+.\"
+.Dd July 7, 2018
+.Dt IMX6_AHCI 4
+.Os
+.Sh NAME
+.Nm imx6_ahci
+.Nd device driver for the NXP i.MX6 on-chip SATA controller
+.Sh SYNOPSIS
+To compile this driver into the kernel,
+place the following line in your
+kernel configuration file:
+.Bd -ragged -offset indent
+.Cd "device ahci"
+.Ed
+.Pp
+Alternatively, to load the driver as a
+module at boot time, place the following line in
+.Xr loader.conf 5 :
+.Bd -literal -offset indent
+imx6_ahci_load="YES"
+.Ed
+.Sh DESCRIPTION
+The
+.Nm
+driver provides
+support for the on-chip SATA controller found on some models of
+the NXP i.MX6 chip.
+The driver is a thin glue layer to interpret the platform's FDT
+data and marshall resources for the standard
+.Xr ahci 4
+driver.
+.Sh SEE ALSO
+.Xr ahci 4 ,
+.Xr fdt 4 ,
+.Sh HISTORY
+The
+.Nm
+driver first appeared in
+.Fx 12.0 .

Modified: stable/11/sys/arm/freescale/imx/imx6_ahci.c
==============================================================================
--- stable/11/sys/arm/freescale/imx/imx6_ahci.c	Mon Apr 22 04:56:41 2019	(r346524)
+++ stable/11/sys/arm/freescale/imx/imx6_ahci.c	Mon Apr 22 04:58:01 2019	(r346525)
@@ -64,6 +64,11 @@ __FBSDID("$FreeBSD$");
 #define	SATA_PHY_LANE0_OUT_STAT			0x2003
 #define	  SATA_PHY_LANE0_OUT_STAT_RX_PLL_STATE	  (1 << 1)
 
+static struct ofw_compat_data compat_data[] = {
+	{"fsl,imx6q-ahci", true},
+	{NULL,             false}
+};
+
 static int
 imx6_ahci_phy_ctrl(struct ahci_controller* sc, uint32_t bitmask, bool on)
 {
@@ -215,7 +220,7 @@ imx6_ahci_probe(device_t dev)
 		return (ENXIO);
 	}
 
-	if (!ofw_bus_is_compatible(dev, "fsl,imx6q-ahci")) {
+	if (!ofw_bus_search_compatible(dev, compat_data)->ocd_data) {
 		return (ENXIO);
 	}
 	device_set_desc(dev, "i.MX6 Integrated AHCI controller");
@@ -354,3 +359,5 @@ static driver_t ahci_ata_driver = {
 };
 
 DRIVER_MODULE(imx6_ahci, simplebus, ahci_ata_driver, ahci_devclass, 0, 0);
+MODULE_DEPEND(imx6_ahci, ahci, 1, 1, 1);
+SIMPLEBUS_PNP_INFO(compat_data)

Modified: stable/11/sys/modules/imx/Makefile
==============================================================================
--- stable/11/sys/modules/imx/Makefile	Mon Apr 22 04:56:41 2019	(r346524)
+++ stable/11/sys/modules/imx/Makefile	Mon Apr 22 04:58:01 2019	(r346525)
@@ -3,6 +3,7 @@
 
 SUBDIR = \
 	../ffec \
+	imx6_ahci \
 	imx_i2c \
 	imx_spi \
 	imx_wdog \



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201904220458.x3M4w2YQ030950>