socsvn commit: r240600 - in soc2012/aleek/beaglexm-armv6/sys:
arm/conf arm/ti arm/ti/omap3 arm/ti/omap3/beagleboard
arm/ti/twl boot/fdt/dts
aleek at FreeBSD.org
aleek at FreeBSD.org
Mon Aug 20 17:45:42 UTC 2012
Author: aleek
Date: Mon Aug 20 17:45:39 2012
New Revision: 240600
URL: http://svnweb.FreeBSD.org/socsvn/?view=rev&rev=240600
Log:
minor fixes and cleanup. Added beagleboard board initialization as SYSINIT function
Added:
soc2012/aleek/beaglexm-armv6/sys/arm/ti/omap3/beagleboard/
soc2012/aleek/beaglexm-armv6/sys/arm/ti/omap3/beagleboard/beagleboard.c
soc2012/aleek/beaglexm-armv6/sys/arm/ti/omap3/beagleboard/files.beagleboardxm
soc2012/aleek/beaglexm-armv6/sys/arm/ti/omap3/beagleboard/std.beagleboardxm
Deleted:
soc2012/aleek/beaglexm-armv6/sys/arm/ti/omap3/files.beagleboardxm
soc2012/aleek/beaglexm-armv6/sys/arm/ti/omap3/std.beagleboardxm
Modified:
soc2012/aleek/beaglexm-armv6/sys/arm/conf/BEAGLEBOARD-XM
soc2012/aleek/beaglexm-armv6/sys/arm/ti/files.ti
soc2012/aleek/beaglexm-armv6/sys/arm/ti/omap3/omap3_early_uart.c
soc2012/aleek/beaglexm-armv6/sys/arm/ti/omap3/omap3_gptimer.c
soc2012/aleek/beaglexm-armv6/sys/arm/ti/omap3/omap3_gptimer.h
soc2012/aleek/beaglexm-armv6/sys/arm/ti/ti_sdma.c
soc2012/aleek/beaglexm-armv6/sys/arm/ti/twl/twl_vreg.c
soc2012/aleek/beaglexm-armv6/sys/boot/fdt/dts/beagleboardxm.dts
Modified: soc2012/aleek/beaglexm-armv6/sys/arm/conf/BEAGLEBOARD-XM
==============================================================================
--- soc2012/aleek/beaglexm-armv6/sys/arm/conf/BEAGLEBOARD-XM Mon Aug 20 16:57:27 2012 (r240599)
+++ soc2012/aleek/beaglexm-armv6/sys/arm/conf/BEAGLEBOARD-XM Mon Aug 20 17:45:39 2012 (r240600)
@@ -20,7 +20,7 @@
ident BEAGLEBOARD-XM
-include "../ti/omap3/std.beagleboardxm"
+include "../ti/omap3/beagleboard/std.beagleboardxm"
makeoptions MODULES_OVERRIDE=""
makeoptions WITHOUT_MODULES="ahc"
@@ -68,7 +68,7 @@
device mmcsd # mmc/sd flash cards
# Boot device is 2nd slice on MMC/SD card
-options ROOTDEVNAME=\"msdosfs:mmcsd0s2\"
+options ROOTDEVNAME=\"msdosfs:mmcsd0s3\"
# Console and misc
Modified: soc2012/aleek/beaglexm-armv6/sys/arm/ti/files.ti
==============================================================================
--- soc2012/aleek/beaglexm-armv6/sys/arm/ti/files.ti Mon Aug 20 16:57:27 2012 (r240599)
+++ soc2012/aleek/beaglexm-armv6/sys/arm/ti/files.ti Mon Aug 20 17:45:39 2012 (r240600)
@@ -3,7 +3,7 @@
kern/kern_clocksource.c standard
arm/arm/bus_space_generic.c standard
-arm/arm/bus_space_asm_generic.S standard
+arm/arm/bus_space_asm_generic.S standard
arm/arm/cpufunc_asm_armv5.S standard
arm/arm/cpufunc_asm_arm10.S standard
arm/arm/cpufunc_asm_arm11.S standard
Added: soc2012/aleek/beaglexm-armv6/sys/arm/ti/omap3/beagleboard/beagleboard.c
==============================================================================
--- /dev/null 00:00:00 1970 (empty, because file is newly added)
+++ soc2012/aleek/beaglexm-armv6/sys/arm/ti/omap3/beagleboard/beagleboard.c Mon Aug 20 17:45:39 2012 (r240600)
@@ -0,0 +1,41 @@
+/*-
+ * Copyright (c) 2012
+ * Aleksander Dutkowski <aleek at 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 AUTHOR AND CONTRIBUTORS ``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 AUTHOR OR CONTRIBUTORS 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.
+ */
+#include <sys/cdefs.h>
+__FBSDID("$FreeBSD$");
+
+#include <sys/param.h>
+#include <sys/systm.h>
+#include <sys/bus.h>
+#include <sys/kernel.h>
+
+static void
+board_init(void *dummy)
+{
+ printf( "BeagleBoard Init!\n" );
+ return;
+}
+SYSINIT(board_init, SI_SUB_PSEUDO, SI_ORDER_ANY, board_init, NULL);
Added: soc2012/aleek/beaglexm-armv6/sys/arm/ti/omap3/beagleboard/files.beagleboardxm
==============================================================================
--- /dev/null 00:00:00 1970 (empty, because file is newly added)
+++ soc2012/aleek/beaglexm-armv6/sys/arm/ti/omap3/beagleboard/files.beagleboardxm Mon Aug 20 17:45:39 2012 (r240600)
@@ -0,0 +1,6 @@
+#$FreeBSD$
+
+arm/ti/twl/twl.c optional twl
+arm/ti/twl/twl_vreg.c optional twl twl_vreg
+arm/ti/twl/twl_clks.c optional twl twl_clks
+arm/ti/omap3/beagleboard/beagleboard.c standard
Added: soc2012/aleek/beaglexm-armv6/sys/arm/ti/omap3/beagleboard/std.beagleboardxm
==============================================================================
--- /dev/null 00:00:00 1970 (empty, because file is newly added)
+++ soc2012/aleek/beaglexm-armv6/sys/arm/ti/omap3/beagleboard/std.beagleboardxm Mon Aug 20 17:45:39 2012 (r240600)
@@ -0,0 +1,4 @@
+# $FreeBSD$
+
+files "../ti/omap3/beagleboard/files.beagleboardxm"
+include "../ti/omap3/std.omap3"
Modified: soc2012/aleek/beaglexm-armv6/sys/arm/ti/omap3/omap3_early_uart.c
==============================================================================
--- soc2012/aleek/beaglexm-armv6/sys/arm/ti/omap3/omap3_early_uart.c Mon Aug 20 16:57:27 2012 (r240599)
+++ soc2012/aleek/beaglexm-armv6/sys/arm/ti/omap3/omap3_early_uart.c Mon Aug 20 17:45:39 2012 (r240600)
@@ -27,6 +27,8 @@
/*
* Debugging functions for early uart for omap3530 and omap3 TI SoC's
+ * They might be used for early frinting when console is not initialized yet
+ * Just change the arm_early_putc() function
*/
#include <sys/types.h>
Modified: soc2012/aleek/beaglexm-armv6/sys/arm/ti/omap3/omap3_gptimer.c
==============================================================================
--- soc2012/aleek/beaglexm-armv6/sys/arm/ti/omap3/omap3_gptimer.c Mon Aug 20 16:57:27 2012 (r240599)
+++ soc2012/aleek/beaglexm-armv6/sys/arm/ti/omap3/omap3_gptimer.c Mon Aug 20 17:45:39 2012 (r240600)
@@ -1,9 +1,8 @@
-
/*-
* Copyright (c) 2012 Aleksander Dutkowski <aleek at FreeBSD.org>
+ * Copyright (c) 2011 Ben Gray <ben.r.gray at gmail.com>.
* All rights reserved.
*
- *
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions
* are met:
Modified: soc2012/aleek/beaglexm-armv6/sys/arm/ti/omap3/omap3_gptimer.h
==============================================================================
--- soc2012/aleek/beaglexm-armv6/sys/arm/ti/omap3/omap3_gptimer.h Mon Aug 20 16:57:27 2012 (r240599)
+++ soc2012/aleek/beaglexm-armv6/sys/arm/ti/omap3/omap3_gptimer.h Mon Aug 20 17:45:39 2012 (r240600)
@@ -1,10 +1,30 @@
-#define OMAP3_NUM_TIMERS 12
-
-/*
- * Ids of the timers used by the kernel
+/*-
+ * Copyright (c) 2012 Aleksander Dutkowski <aleek at FreeBSD.org>
+ * Copyright (c) 2011 Ben Gray <ben.r.gray at gmail.com>.
+ * 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 AND CONTRIBUTORS ``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 OR CONTRIBUTORS 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.
*/
-#define TICKTIMER_GPTIMER 10
-#define TIMECOUNT_GPTIMER 11
+#define OMAP3_NUM_TIMERS 12
/*
* Standard registers for OMAP3 General Purpose Timers
Modified: soc2012/aleek/beaglexm-armv6/sys/arm/ti/ti_sdma.c
==============================================================================
--- soc2012/aleek/beaglexm-armv6/sys/arm/ti/ti_sdma.c Mon Aug 20 16:57:27 2012 (r240599)
+++ soc2012/aleek/beaglexm-armv6/sys/arm/ti/ti_sdma.c Mon Aug 20 17:45:39 2012 (r240600)
@@ -341,8 +341,6 @@
if (ch == NULL)
return (EINVAL);
- device_printf( sc->sc_dev, "Activating channel %d\n", *ch );
-
TI_SDMA_LOCK(sc);
/* Check to see if all channels are in use */
Modified: soc2012/aleek/beaglexm-armv6/sys/arm/ti/twl/twl_vreg.c
==============================================================================
--- soc2012/aleek/beaglexm-armv6/sys/arm/ti/twl/twl_vreg.c Mon Aug 20 16:57:27 2012 (r240599)
+++ soc2012/aleek/beaglexm-armv6/sys/arm/ti/twl/twl_vreg.c Mon Aug 20 17:45:39 2012 (r240600)
@@ -936,6 +936,10 @@
char rnames[256];
char *name, *voltage;
int len = 0, prop_len;
+
+ // playing with TWL can sometimes cause a kernel panic
+ //
+#ifdef notyet
uint8_t val;
if (twl_is_4030(sc->sc_pdev)) {
@@ -943,7 +947,6 @@
* by writing proper values to PROTECT_KEY register
*/
- /*
val = 0xC0;
if( twl_write( sc->sc_pdev, 3, 0x44, &val, 1 ) != 0 )
{
@@ -955,7 +958,7 @@
{
device_printf( sc->sc_dev, "Unable to unlock PROTECT_KEY\n" );
return 0;
- }*/
+ }
val = 0x01;
if( twl_write( sc->sc_pdev, 0, 0xFD, &val, 1 ) != 0 )
@@ -963,12 +966,11 @@
device_printf( sc->sc_dev, "Unable to power USB PHY\n" );
return 0;
}
- /*
if( twl_read( sc->sc_pdev, 3, 0x46, &val, 1 ) != 0 )
{
device_printf( sc->sc_dev, "Could not read P1_SW_EVENTS register\n" );
return 0;
- }*/
+ }
val = 0x00;
if( twl_write( sc->sc_pdev, 3, 0x46, &val, 1 ) != 0 )
{
@@ -977,13 +979,12 @@
}
// if we have BeagleBoard-xM, we need to repower HUB
- /*
val = ~(TWL4030_LEDEN_LEDAON | TWL4030_LEDEN_LEDBON);
twl_vreg_led_set( sc, val );
val = (TWL4030_LEDEN_LEDAON | TWL4030_LEDEN_LEDBON);
- twl_vreg_led_set( sc, val );*/
+ twl_vreg_led_set( sc, val );
}
-
+#endif
/* Add the regulators from the list */
walker = ®ulators[0];
@@ -1030,14 +1031,14 @@
}
}
-//#ifdef DEBUG
+#ifdef DEBUG
int err;
LIST_FOREACH(entry, &sc->sc_vreg_list, entries) {
err = twl_vreg_read_regulator_voltage(sc, entry, &millivolts);
if (!err)
device_printf(sc->sc_dev, "%s : %d mV\n", entry->name, millivolts);
}
-//#endif
+#endif
return (0);
}
Modified: soc2012/aleek/beaglexm-armv6/sys/boot/fdt/dts/beagleboardxm.dts
==============================================================================
--- soc2012/aleek/beaglexm-armv6/sys/boot/fdt/dts/beagleboardxm.dts Mon Aug 20 16:57:27 2012 (r240599)
+++ soc2012/aleek/beaglexm-armv6/sys/boot/fdt/dts/beagleboardxm.dts Mon Aug 20 17:45:39 2012 (r240600)
@@ -101,8 +101,6 @@
so they work even without SCM configuration. It is need to be fixed */
/*"ic11", "i2c1_scl", "input_pullup_inact",
"ic12", "i2c1_sda", "input_pullup_inact";*/
-
-
};
prcm at 48004000 {
@@ -113,6 +111,30 @@
0x48306000 0x2000>;
};
+ i2c: i2c at 48070000 {
+ #address-cells = <1>;
+ #size-cells = <0>;
+ compatible = "ti,i2c";
+ reg =< 0x48070000 0x1000 >;
+ interrupts = <56>;
+ interrupt-parent = <&AINTC>;
+ i2c-device-id = <1>;
+
+ twl4030 at 48 {
+ compatible = "ti,twl4030";
+ reg = < 0x48 >;
+ voltage-regulators =
+ "vaux2", "0",
+ "vusb1v5", "1500",
+ "vusb1v8", "1800",
+ "vusb3v1", "3100",
+ "vaux2", "1800",
+ "vusb1v5", "0",
+ "vusb1v8", "0",
+ "vusb3v1", "0";
+ };
+ };
+
GPIO: gpio {
#gpio-cells = <3>;
compatible = "ti,gpio";
@@ -171,37 +193,6 @@
mmchs-device-id = <1>;
};
- i2c1: i2c at 48070000 {
- #address-cells = <1>;
- #size-cells = <0>;
- compatible = "ti,i2c";
- reg =< 0x48070000 0x1000 >;
- interrupts = <56>;
- interrupt-parent = <&AINTC>;
- i2c-device-id = <1>;
-
- twl4030 at 48 {
- compatible = "ti,twl4030";
- reg = < 0x48 >;
- voltage-regulators =
- "vaux1", "0",
- "vaux2", "0",
- "vaux3", "0",
- "vaux4", "0",
- /*"vmmc1", "0",*/
- /*"vmmc2", "0",*/
- /*"vpll1", "0",*/
- "vpll2", "0",
- "vsim", "0",
- "vdac", "0",
- /*"vintana1", "0",*/
- "vintana2", "0",
- /*"vintdig", "0",*/
- "vusb1v5", "0",
- "vusb1v8", "0",
- "vusb3v1", "0";
- };
- };
/*
ehci at 48064800 {
compatible = "ti,ehci";
More information about the svn-soc-all
mailing list