svn commit: r266095 - in stable/10/sys: arm/at91 arm/conf dev/uart
Ian Lepore
ian at FreeBSD.org
Wed May 14 23:17:36 UTC 2014
Author: ian
Date: Wed May 14 23:17:33 2014
New Revision: 266095
URL: http://svnweb.freebsd.org/changeset/base/266095
Log:
MFC r261083, r261092, r261126, r261127, r261128, r261129, r261130, r261131
Add Atmel serial drivers.
uart clock-frequency is a FreeBSD-specific extention. Make it optional and
allow the client uart drivers to decide if a frequency is required.
Remove redundant declaration for uart devclass.
Commit some unrelated, but harmless, FDT ifdefs.
Add at91 NAND support, Fix comment.
Remove obsolete options and fix comments
Modified:
stable/10/sys/arm/at91/uart_bus_at91usart.c
stable/10/sys/arm/at91/uart_cpu_at91usart.c
stable/10/sys/arm/conf/BWCT
stable/10/sys/arm/conf/HL200
stable/10/sys/arm/conf/QILA9G20
stable/10/sys/arm/conf/SAM9G20EK
stable/10/sys/arm/conf/SAM9X25EK
stable/10/sys/arm/conf/SN9G45
stable/10/sys/dev/uart/uart.h
stable/10/sys/dev/uart/uart_bus_fdt.c
stable/10/sys/dev/uart/uart_cpu_fdt.c
Directory Properties:
stable/10/ (props changed)
Modified: stable/10/sys/arm/at91/uart_bus_at91usart.c
==============================================================================
--- stable/10/sys/arm/at91/uart_bus_at91usart.c Wed May 14 22:52:16 2014 (r266094)
+++ stable/10/sys/arm/at91/uart_bus_at91usart.c Wed May 14 23:17:33 2014 (r266095)
@@ -48,8 +48,6 @@ __FBSDID("$FreeBSD$");
static int usart_at91_probe(device_t dev);
-extern struct uart_class at91_usart_class;
-
static device_method_t usart_at91_methods[] = {
/* Device interface */
DEVMETHOD(device_probe, usart_at91_probe),
Modified: stable/10/sys/arm/at91/uart_cpu_at91usart.c
==============================================================================
--- stable/10/sys/arm/at91/uart_cpu_at91usart.c Wed May 14 22:52:16 2014 (r266094)
+++ stable/10/sys/arm/at91/uart_cpu_at91usart.c Wed May 14 23:17:33 2014 (r266095)
@@ -26,8 +26,10 @@
* SUCH DAMAGE.
*/
+#include "opt_platform.h"
#include "opt_uart.h"
+#ifndef FDT
#include <sys/cdefs.h>
__FBSDID("$FreeBSD$");
@@ -48,7 +50,6 @@ __FBSDID("$FreeBSD$");
bus_space_tag_t uart_bus_space_io;
bus_space_tag_t uart_bus_space_mem;
-extern struct uart_class at91_usart_class;
extern struct bus_space at91_bs_tag;
int
@@ -86,3 +87,4 @@ uart_cpu_getdev(int devtype, struct uart
uart_getenv(devtype, di, class);
return (0);
}
+#endif
Modified: stable/10/sys/arm/conf/BWCT
==============================================================================
--- stable/10/sys/arm/conf/BWCT Wed May 14 22:52:16 2014 (r266094)
+++ stable/10/sys/arm/conf/BWCT Wed May 14 23:17:33 2014 (r266095)
@@ -41,7 +41,7 @@ options SOFTUPDATES #Enable FFS soft u
#options UFS_ACL #Support for access control lists
#options UFS_DIRHASH #Improve performance on big directories
#options MD_ROOT #MD is a potential root device
-#options MD_ROOT_SIZE=4096 # 3MB ram disk
+#options MD_ROOT_SIZE=4096 # 4MB ram disk
#options ROOTDEVNAME=\"ufs:md0\"
#options ROOTDEVNAME=\"ufs:/dev/mmcsd0s1a\"
options NFSCL #New Network Filesystem Client
Modified: stable/10/sys/arm/conf/HL200
==============================================================================
--- stable/10/sys/arm/conf/HL200 Wed May 14 22:52:16 2014 (r266094)
+++ stable/10/sys/arm/conf/HL200 Wed May 14 23:17:33 2014 (r266095)
@@ -37,7 +37,7 @@ options FFS #Berkeley Fast Filesystem
#options UFS_ACL #Support for access control lists
#options UFS_DIRHASH #Improve performance on big directories
#options MD_ROOT #MD is a potential root device
-#options MD_ROOT_SIZE=4096 # 3MB ram disk
+#options MD_ROOT_SIZE=4096 # 4MB ram disk
#options ROOTDEVNAME=\"ufs:/dev/mmcsd0s1a\"
options NFSCL #New Network Filesystem Client
#options NFSD #New Network Filesystem Server
Modified: stable/10/sys/arm/conf/QILA9G20
==============================================================================
--- stable/10/sys/arm/conf/QILA9G20 Wed May 14 22:52:16 2014 (r266094)
+++ stable/10/sys/arm/conf/QILA9G20 Wed May 14 23:17:33 2014 (r266095)
@@ -38,7 +38,7 @@ options FFS #Berkeley Fast Filesystem
#options UFS_ACL #Support for access control lists
#options UFS_DIRHASH #Improve performance on big directories
#options MD_ROOT #MD is a potential root device
-#options MD_ROOT_SIZE=4096 # 3MB ram disk
+#options MD_ROOT_SIZE=4096 # 4MB ram disk
options NFSCL #New Network Filesystem Client
#options NFSD #New Network Filesystem Server
#options NFSLOCKD #Network Lock Manager
@@ -63,7 +63,6 @@ options SYSVSHM #SYSV-style shared me
options SYSVMSG #SYSV-style message queues
options SYSVSEM #SYSV-style semaphores
options _KPOSIX_PRIORITY_SCHEDULING #Posix P1003_1B real-time extensions
-#options SYSCTL_OMIT_DESCR
options MUTEX_NOINLINE
options RWLOCK_NOINLINE
options NO_FFS_SNAPSHOT
Modified: stable/10/sys/arm/conf/SAM9G20EK
==============================================================================
--- stable/10/sys/arm/conf/SAM9G20EK Wed May 14 22:52:16 2014 (r266094)
+++ stable/10/sys/arm/conf/SAM9G20EK Wed May 14 23:17:33 2014 (r266095)
@@ -37,7 +37,8 @@ options FFS #Berkeley Fast Filesystem
#options UFS_ACL #Support for access control lists
#options UFS_DIRHASH #Improve performance on big directories
#options MD_ROOT #MD is a potential root device
-#options MD_ROOT_SIZE=4096 # 3MB ram disk
+#options MD_ROOT_SIZE=4096 # 4MB ram disk
+options NANDFS #NAND file system
options NFSCL #New Network Filesystem Client
#options NFSD #New Network Filesystem Server
#options NFSLOCKD #Network Lock Manager
@@ -62,7 +63,6 @@ options SYSVSHM #SYSV-style shared me
options SYSVMSG #SYSV-style message queues
options SYSVSEM #SYSV-style semaphores
options _KPOSIX_PRIORITY_SCHEDULING #Posix P1003_1B real-time extensions
-#options SYSCTL_OMIT_DESCR
options MUTEX_NOINLINE
options RWLOCK_NOINLINE
options NO_FFS_SNAPSHOT
@@ -91,6 +91,9 @@ option AT91_ATE_USE_RMII
device at91_twi # TWI: Two Wire Interface (EEPROM)
device at91_wdt # WDT: Watchdog timer
+# NAND Flash - Reference design has Samsung 256MB but others possible
+device nand # NAND interface on CS3
+
# NOTE: SPI DataFlash and mci/mmc/mmcsd have hardware
# confilict on this card. Use one or the other.
# see board_sam9g20ek.c
@@ -105,7 +108,7 @@ device at91_mci
device mmc
device mmcsd
option AT91_MCI_SLOT_B
-#option AT91_MCI_HAS_4WIRE
+option AT91_MCI_HAS_4WIRE
# iic
device iic
@@ -128,14 +131,14 @@ device uhid # "Human Interface Devices
#device udbp # USB Double Bulk Pipe devices
# USB Ethernet, requires miibus
-device miibus
+#device miibus
#device aue # ADMtek USB Ethernet
#device axe # ASIX Electronics USB Ethernet
#device cdce # Generic USB over Ethernet
#device cue # CATC USB Ethernet
#device kue # Kawasaki LSI USB Ethernet
#device rue # RealTek RTL8150 USB Ethernet
-device udav # Davicom DM9601E USB
+#device udav # Davicom DM9601E USB
# USB Wireless
#device rum # Ralink Technology RT2501USB wireless NICs
@@ -149,4 +152,3 @@ device udav # Davicom DM9601E USB
#device wlan_ccmp # 802.11 CCMP support
#device wlan_tkip # 802.11 TKIP support
#device wlan_amrr # AMRR transmit rate control algorithm
-
Modified: stable/10/sys/arm/conf/SAM9X25EK
==============================================================================
--- stable/10/sys/arm/conf/SAM9X25EK Wed May 14 22:52:16 2014 (r266094)
+++ stable/10/sys/arm/conf/SAM9X25EK Wed May 14 23:17:33 2014 (r266095)
@@ -38,7 +38,7 @@ options FFS #Berkeley Fast Filesystem
#options UFS_ACL #Support for access control lists
#options UFS_DIRHASH #Improve performance on big directories
#options MD_ROOT #MD is a potential root device
-#options MD_ROOT_SIZE=4096 # 3MB ram disk
+#options MD_ROOT_SIZE=4096 # 4MB ram disk
options NFSCL #New Network Filesystem Client
#options NFSD #New Network Filesystem Server
#options NFSLOCKD #Network Lock Manager
@@ -63,7 +63,6 @@ options SYSVSHM #SYSV-style shared me
options SYSVMSG #SYSV-style message queues
options SYSVSEM #SYSV-style semaphores
options _KPOSIX_PRIORITY_SCHEDULING #Posix P1003_1B real-time extensions
-#options SYSCTL_OMIT_DESCR
options MUTEX_NOINLINE
options RWLOCK_NOINLINE
options NO_FFS_SNAPSHOT
Modified: stable/10/sys/arm/conf/SN9G45
==============================================================================
--- stable/10/sys/arm/conf/SN9G45 Wed May 14 22:52:16 2014 (r266094)
+++ stable/10/sys/arm/conf/SN9G45 Wed May 14 23:17:33 2014 (r266095)
@@ -37,7 +37,7 @@ options FFS #Berkeley Fast Filesystem
#options UFS_ACL #Support for access control lists
#options UFS_DIRHASH #Improve performance on big directories
#options MD_ROOT #MD is a potential root device
-#options MD_ROOT_SIZE=4096 # 3MB ram disk
+#options MD_ROOT_SIZE=4096 # 4MB ram disk
options NFSCL #New Network Filesystem Client
#options NFSD #New Network Filesystem Server
#options NFSLOCKD #Network Lock Manager
@@ -62,7 +62,6 @@ options SYSVSHM #SYSV-style shared me
options SYSVMSG #SYSV-style message queues
options SYSVSEM #SYSV-style semaphores
options _KPOSIX_PRIORITY_SCHEDULING #Posix P1003_1B real-time extensions
-#options SYSCTL_OMIT_DESCR
options MUTEX_NOINLINE
options RWLOCK_NOINLINE
options NO_FFS_SNAPSHOT
Modified: stable/10/sys/dev/uart/uart.h
==============================================================================
--- stable/10/sys/dev/uart/uart.h Wed May 14 22:52:16 2014 (r266094)
+++ stable/10/sys/dev/uart/uart.h Wed May 14 23:17:33 2014 (r266095)
@@ -76,6 +76,7 @@ extern struct uart_class uart_pl011_clas
extern struct uart_class uart_cdnc_class __attribute__((weak));
extern struct uart_class uart_ti8250_class __attribute__((weak));
extern struct uart_class uart_vybrid_class __attribute__((weak));
+extern struct uart_class at91_usart_class __attribute__((weak));
#ifdef FDT
struct ofw_compat_data;
Modified: stable/10/sys/dev/uart/uart_bus_fdt.c
==============================================================================
--- stable/10/sys/dev/uart/uart_bus_fdt.c Wed May 14 22:52:16 2014 (r266094)
+++ stable/10/sys/dev/uart/uart_bus_fdt.c Wed May 14 23:17:33 2014 (r266095)
@@ -71,6 +71,8 @@ static driver_t uart_fdt_driver = {
*/
static struct ofw_compat_data compat_data[] = {
{"arm,pl011", (uintptr_t)&uart_pl011_class},
+ {"atmel,at91rm9200-usart",(uintptr_t)&at91_usart_class},
+ {"atmel,at91sam9260-usart",(uintptr_t)&at91_usart_class},
{"cadence,uart", (uintptr_t)&uart_cdnc_class},
{"exynos", (uintptr_t)&uart_s3c2410_class},
{"fsl,imx6q-uart", (uintptr_t)&uart_imx_class},
Modified: stable/10/sys/dev/uart/uart_cpu_fdt.c
==============================================================================
--- stable/10/sys/dev/uart/uart_cpu_fdt.c Wed May 14 22:52:16 2014 (r266094)
+++ stable/10/sys/dev/uart/uart_cpu_fdt.c Wed May 14 23:17:33 2014 (r266095)
@@ -62,9 +62,10 @@ uart_fdt_get_clock(phandle_t node, pcell
{
pcell_t clock;
+ /* clock-frequency is a FreeBSD-only extention. */
if ((OF_getprop(node, "clock-frequency", &clock,
sizeof(clock))) <= 0)
- return (ENXIO);
+ clock = 0;
if (clock == 0)
/* Try to retrieve parent 'bus-frequency' */
More information about the svn-src-stable
mailing list