change log for rtems (2010-11-12)
rtems-vc at rtems.org
rtems-vc at rtems.org
Fri Nov 12 15:11:33 UTC 2010
*sh*:
2010-11-12 Sebastian Huber <sebastian.huber at embedded-brains.de>
* console/console.h, console/console.c, console/config.c,
console/ns16550cfg.c: Removed files.
* console/console-config.c: New file.
* Makefile.am: Reflect changes above.
* configure.ac: New BSP options.
* include/bsp.h: Use new BSP options.
* network/network.c: Avoid memory leak.
* startup/bspstart.c: Initialize console port table.
* spi/spi_init.c: Update for SD card API changes.
M 1.96 c/src/lib/libbsp/powerpc/gen83xx/ChangeLog
M 1.31 c/src/lib/libbsp/powerpc/gen83xx/Makefile.am
M 1.14 c/src/lib/libbsp/powerpc/gen83xx/configure.ac
R 1.4 c/src/lib/libbsp/powerpc/gen83xx/console/config.c
A 1.1 c/src/lib/libbsp/powerpc/gen83xx/console/console-config.c
R 1.2 c/src/lib/libbsp/powerpc/gen83xx/console/console.h
R 1.10 c/src/lib/libbsp/powerpc/gen83xx/console/console.c
R 1.2 c/src/lib/libbsp/powerpc/gen83xx/console/ns16550cfg.c
M 1.20 c/src/lib/libbsp/powerpc/gen83xx/include/bsp.h
M 1.13 c/src/lib/libbsp/powerpc/gen83xx/network/network.c
M 1.7 c/src/lib/libbsp/powerpc/gen83xx/spi/spi_init.c
M 1.29 c/src/lib/libbsp/powerpc/gen83xx/startup/bspstart.c
diff -u rtems/c/src/lib/libbsp/powerpc/gen83xx/ChangeLog:1.95 rtems/c/src/lib/libbsp/powerpc/gen83xx/ChangeLog:1.96
--- rtems/c/src/lib/libbsp/powerpc/gen83xx/ChangeLog:1.95 Tue Jun 29 13:52:51 2010
+++ rtems/c/src/lib/libbsp/powerpc/gen83xx/ChangeLog Fri Nov 12 08:16:57 2010
@@ -1,3 +1,15 @@
+2010-11-12 Sebastian Huber <sebastian.huber at embedded-brains.de>
+
+ * console/console.h, console/console.c, console/config.c,
+ console/ns16550cfg.c: Removed files.
+ * console/console-config.c: New file.
+ * Makefile.am: Reflect changes above.
+ * configure.ac: New BSP options.
+ * include/bsp.h: Use new BSP options.
+ * network/network.c: Avoid memory leak.
+ * startup/bspstart.c: Initialize console port table.
+ * spi/spi_init.c: Update for SD card API changes.
+
2010-06-29 Joel Sherrill <joel.sherrill at oarcorp.com>
* configure.ac: Remove AC_CHECK_SIZEOF([void *]).
diff -u rtems/c/src/lib/libbsp/powerpc/gen83xx/Makefile.am:1.30 rtems/c/src/lib/libbsp/powerpc/gen83xx/Makefile.am:1.31
--- rtems/c/src/lib/libbsp/powerpc/gen83xx/Makefile.am:1.30 Fri Apr 30 07:48:52 2010
+++ rtems/c/src/lib/libbsp/powerpc/gen83xx/Makefile.am Fri Nov 12 08:16:57 2010
@@ -79,7 +79,8 @@
../../shared/src/irq-server.c
# console
-libbsp_a_SOURCES += console/console.c console/ns16550cfg.c
+libbsp_a_SOURCES += ../../shared/console.c \
+ console/console-config.c
# bsp_i2c
libbsp_a_SOURCES += i2c/i2c_init.c
# bsp_spi
diff -u rtems/c/src/lib/libbsp/powerpc/gen83xx/configure.ac:1.13 rtems/c/src/lib/libbsp/powerpc/gen83xx/configure.ac:1.14
--- rtems/c/src/lib/libbsp/powerpc/gen83xx/configure.ac:1.13 Tue Jun 29 13:52:51 2010
+++ rtems/c/src/lib/libbsp/powerpc/gen83xx/configure.ac Fri Nov 12 08:16:57 2010
@@ -43,6 +43,24 @@
RTEMS_BSPOPTS_HELP([MPC8349],
[If defined, use custom settings for the MPC8349 libcpu family.])
+RTEMS_BSPOPTS_SET([BSP_CONSOLE_BAUD],[mpc8313erdb],[115200])
+RTEMS_BSPOPTS_SET([BSP_CONSOLE_BAUD],[*],[9600])
+RTEMS_BSPOPTS_HELP([BSP_CONSOLE_BAUD],[Default baud for console and other serial devices.])
+
+RTEMS_BSPOPTS_SET([BSP_USE_UART_INTERRUPTS],[mpc8313erdb],[1])
+RTEMS_BSPOPTS_HELP([BSP_USE_UART_INTERRUPTS],[enable usage of interrupts for the UART modules])
+
+RTEMS_BSPOPTS_SET([BSP_USE_UART2],[mpc8313erdb],[1])
+RTEMS_BSPOPTS_SET([BSP_USE_UART2],[mpc8349eamds],[1])
+RTEMS_BSPOPTS_SET([BSP_USE_UART2],[hsc_cm01],[1])
+RTEMS_BSPOPTS_HELP([BSP_USE_UART2],[If defined, enables UART2.])
+
+RTEMS_BSPOPTS_SET([HAS_UBOOT],[mpc8313erdb],[1])
+RTEMS_BSPOPTS_HELP([HAS_UBOOT],[If defined, enables U-Boot support.])
+
+RTEMS_BSPOPTS_SET([PPC_USE_DATA_CACHE],[*],[1])
+RTEMS_BSPOPTS_HELP([PPC_USE_DATA_CACHE], [If defined, then the PowerPC specific
+ code in RTEMS will use data cache instructions to optimize the context switch code.])
RTEMS_CHECK_NETWORKING
AM_CONDITIONAL(HAS_NETWORKING,test "$HAS_NETWORKING" = "yes")
diff -u /dev/null rtems/c/src/lib/libbsp/powerpc/gen83xx/console/console-config.c:1.1
--- /dev/null Fri Nov 12 09:11:32 2010
+++ rtems/c/src/lib/libbsp/powerpc/gen83xx/console/console-config.c Fri Nov 12 08:16:57 2010
@@ -0,0 +1,118 @@
+/**
+ * @file
+ *
+ * @brief Console configuration.
+ */
+
+/*
+ * Copyright (c) 2008, 2010 embedded brains GmbH. All rights reserved.
+ *
+ * embedded brains GmbH
+ * Obere Lagerstr. 30
+ * 82178 Puchheim
+ * Germany
+ * <rtems at embedded-brains.de>
+ *
+ * The license and distribution terms for this file may be
+ * found in the file LICENSE in this distribution or at
+ * http://www.rtems.com/license/LICENSE.
+ */
+
+#include <rtems/bspIo.h>
+
+#include <libchip/serial.h>
+#include <libchip/ns16550.h>
+
+#include <mpc83xx/mpc83xx.h>
+
+#include <bspopts.h>
+#include <bsp/irq.h>
+
+#ifdef BSP_USE_UART2
+ #define PORT_COUNT 2
+#else
+ #define PORT_COUNT 1
+#endif
+
+#ifdef BSP_USE_UART_INTERRUPTS
+ #define DEVICE_FNS &ns16550_fns
+#else
+ #define DEVICE_FNS &ns16550_fns_polled
+#endif
+
+static uint8_t gen83xx_console_get_register(uint32_t addr, uint8_t i)
+{
+ volatile uint8_t *reg = (volatile uint8_t *) addr;
+
+ return reg [i];
+}
+
+static void gen83xx_console_set_register(uint32_t addr, uint8_t i, uint8_t val)
+{
+ volatile uint8_t *reg = (volatile uint8_t *) addr;
+
+ reg [i] = val;
+}
+
+unsigned long Console_Port_Count = PORT_COUNT;
+
+rtems_device_minor_number Console_Port_Minor = 0;
+
+console_data Console_Port_Data [PORT_COUNT];
+
+console_tbl Console_Port_Tbl [PORT_COUNT] = {
+ {
+ .sDeviceName = "/dev/ttyS0",
+ .deviceType = SERIAL_NS16550,
+ .pDeviceFns = DEVICE_FNS,
+ .deviceProbe = NULL,
+ .pDeviceFlow = NULL,
+ .ulMargin = 16,
+ .ulHysteresis = 8,
+ .pDeviceParams = (void *) BSP_CONSOLE_BAUD,
+ .ulCtrlPort1 = (uint32_t) &mpc83xx.duart [0],
+ .ulCtrlPort2 = 0,
+ .ulDataPort = (uint32_t) &mpc83xx.duart [0],
+ .getRegister = gen83xx_console_get_register,
+ .setRegister = gen83xx_console_set_register,
+ .getData = NULL,
+ .setData = NULL,
+ .ulClock = 0,
+ .ulIntVector = BSP_IPIC_IRQ_UART1
+ }
+#ifdef BSP_USE_UART2
+ , {
+ .sDeviceName = "/dev/ttyS1",
+ .deviceType = SERIAL_NS16550,
+ .pDeviceFns = DEVICE_FNS,
+ .deviceProbe = NULL,
+ .pDeviceFlow = NULL,
+ .ulMargin = 16,
+ .ulHysteresis = 8,
+ .pDeviceParams = (void *) BSP_CONSOLE_BAUD,
+ .ulCtrlPort1 = (uint32_t) &mpc83xx.duart [1],
+ .ulCtrlPort2 = 0,
+ .ulDataPort = (uint32_t) &mpc83xx.duart [1],
+ .getRegister = gen83xx_console_get_register,
+ .setRegister = gen83xx_console_set_register,
+ .getData = NULL,
+ .setData = NULL,
+ .ulClock = 0,
+ .ulIntVector = BSP_IPIC_IRQ_UART2
+ }
+#endif
+};
+
+static void gen83xx_output_char(char c)
+{
+ const console_fns *console = Console_Port_Tbl [Console_Port_Minor].pDeviceFns;
+
+ if (c == '\n') {
+ console->deviceWritePolled((int) Console_Port_Minor, '\r');
+ }
+ console->deviceWritePolled((int) Console_Port_Minor, c);
+}
+
+BSP_output_char_function_type BSP_output_char = gen83xx_output_char;
+
+BSP_polling_getchar_function_type BSP_poll_char = NULL;
diff -u rtems/c/src/lib/libbsp/powerpc/gen83xx/include/bsp.h:1.19 rtems/c/src/lib/libbsp/powerpc/gen83xx/include/bsp.h:1.20
--- rtems/c/src/lib/libbsp/powerpc/gen83xx/include/bsp.h:1.19 Sun Nov 29 22:26:10 2009
+++ rtems/c/src/lib/libbsp/powerpc/gen83xx/include/bsp.h Fri Nov 12 08:16:57 2010
@@ -20,21 +20,9 @@
#ifndef __GEN83xx_BSP_h
#define __GEN83xx_BSP_h
-#include <bspopts.h>
-
-/*
- * MPC8313E Reference Design Board
- */
-
-#ifdef MPC8313ERDB
-
-#define HAS_UBOOT
+#define BSP_FEATURE_IRQ_EXTENSION
-/* For U-Boot */
-#define CONFIG_MPC83XX
-#define CONFIG_HAS_ETH1
-
-#endif /* MPC8313ERDB */
+#include <bspopts.h>
#include <libcpu/powerpc-utility.h>
@@ -78,25 +66,23 @@
extern "C" {
#endif
-
#include <rtems.h>
#include <rtems/console.h>
#include <rtems/clockdrv.h>
-#include <bsp/irq.h>
#include <bsp/vectors.h>
-#include <bsp/tictac.h>
+#include <bsp/irq.h>
#ifdef HAS_UBOOT
+ #ifdef MPC8313ERDB
+ #define CONFIG_MPC83XX
+ #define CONFIG_HAS_ETH1
+ #endif
-#include <bsp/u-boot.h>
-
-extern bd_t bsp_uboot_board_info;
-extern const size_t bsp_uboot_board_info_size;
-
-#endif /* HAS_UBOOT */
+ #include <bsp/u-boot.h>
-#define BSP_UART1_MINOR 0
-#define BSP_UART2_MINOR 1
+ extern bd_t bsp_uboot_board_info;
+ extern const size_t bsp_uboot_board_info_size;
+#endif
/*
* indicate, that BSP has no IDE driver
@@ -111,21 +97,6 @@
rtems_status_code bsp_register_i2c(void);
rtems_status_code bsp_register_spi(void);
-/* console modes (only termios) */
-#ifdef PRINTK_MINOR
-#undef PRINTK_MINOR
-#endif
-#define PRINTK_MINOR BSP_UART1_MINOR
-
-#if defined(MPC8249EAMDS) || defined(HSC_CM01)
-#define BSP_USE_UART2 TRUE
-#else
-#define BSP_USE_UART2 FALSE
-#endif
-
-#define SINGLE_CHAR_MODE
-#define UARTS_USE_TERMIOS_INT 1
-
/*
* Network driver configuration
*/
@@ -134,16 +105,12 @@
#define RTEMS_BSP_NETWORK_DRIVER_ATTACH BSP_tsec_attach
#ifdef MPC8313ERDB
-
-#define RTEMS_BSP_NETWORK_DRIVER_NAME "tsec2"
-#define RTEMS_BSP_NETWORK_DRIVER_NAME2 "tsec1"
-
-#else /* MPC8313ERDB */
-
-#define RTEMS_BSP_NETWORK_DRIVER_NAME "tsec1"
-#define RTEMS_BSP_NETWORK_DRIVER_NAME2 "tsec2"
-
-#endif /* MPC8313ERDB */
+ #define RTEMS_BSP_NETWORK_DRIVER_NAME "tsec2"
+ #define RTEMS_BSP_NETWORK_DRIVER_NAME2 "tsec1"
+#else
+ #define RTEMS_BSP_NETWORK_DRIVER_NAME "tsec1"
+ #define RTEMS_BSP_NETWORK_DRIVER_NAME2 "tsec2"
+#endif
#if defined(MPC8349EAMDS)
/*
diff -u rtems/c/src/lib/libbsp/powerpc/gen83xx/network/network.c:1.12 rtems/c/src/lib/libbsp/powerpc/gen83xx/network/network.c:1.13
--- rtems/c/src/lib/libbsp/powerpc/gen83xx/network/network.c:1.12 Sun Nov 29 22:26:10 2009
+++ rtems/c/src/lib/libbsp/powerpc/gen83xx/network/network.c Fri Nov 12 08:16:57 2010
@@ -67,12 +67,11 @@
\*=========================================================================*/
{
int unitNumber;
- char *unitName;
/*
* Parse driver name
*/
- if((unitNumber = rtems_bsdnet_parse_driver_name(config, &unitName)) < 0) {
+ if((unitNumber = rtems_bsdnet_parse_driver_name(config, NULL)) < 0) {
return 0;
}
if (attaching) {
diff -u rtems/c/src/lib/libbsp/powerpc/gen83xx/spi/spi_init.c:1.6 rtems/c/src/lib/libbsp/powerpc/gen83xx/spi/spi_init.c:1.7
--- rtems/c/src/lib/libbsp/powerpc/gen83xx/spi/spi_init.c:1.6 Sun Nov 29 22:26:10 2009
+++ rtems/c/src/lib/libbsp/powerpc/gen83xx/spi/spi_init.c Fri Nov 12 08:16:57 2010
@@ -247,31 +247,26 @@
#include <libchip/spi-sd-card.h>
-sd_card_driver_entry sd_card_driver_table [1] = { {
-#if 0
- .driver = {
- .ops = &sd_card_driver_ops,
- .size = sizeof( sd_card_driver_entry)
- },
- .table_index = 0,
- .minor = 0,
-#endif
- .device_name = "sd-card-a",
-#if 0
- .disk_device_name = "/dev/sd-card-a",
-#endif
- .transfer_mode = SD_CARD_TRANSFER_MODE_DEFAULT,
- .command = SD_CARD_COMMAND_DEFAULT,
- /* .response = whatever, */
- .response_index = SD_CARD_COMMAND_SIZE,
- .n_ac_max = SD_CARD_N_AC_MAX_DEFAULT,
- .block_number = 0,
- .block_size = 0,
- .block_size_shift = 0,
- .busy = 1,
- .verbose = 1,
- .schedule_if_busy = 0
- }
+#define SD_CARD_NUMBER 1
+
+size_t sd_card_driver_table_size = SD_CARD_NUMBER;
+
+sd_card_driver_entry sd_card_driver_table [SD_CARD_NUMBER] = {
+ {
+ .device_name = "/dev/sd-card-a",
+ .bus = 0,
+ .transfer_mode = SD_CARD_TRANSFER_MODE_DEFAULT,
+ .command = SD_CARD_COMMAND_DEFAULT,
+ /* .response = whatever, */
+ .response_index = SD_CARD_COMMAND_SIZE,
+ .n_ac_max = SD_CARD_N_AC_MAX_DEFAULT,
+ .block_number = 0,
+ .block_size = 0,
+ .block_size_shift = 0,
+ .busy = true,
+ .verbose = true,
+ .schedule_if_busy = false
+ }
};
#endif /* MPC8313ERDB */
@@ -299,6 +294,7 @@
| 0 or error code |
\*=========================================================================*/
{
+ rtems_status_code sc = RTEMS_SUCCESSFUL;
int ret_code;
unsigned spi_busno;
@@ -378,12 +374,11 @@
#if defined( MPC8313ERDB)
/* Register SD Card driver */
- ret_code = rtems_libi2c_register_drv(
- sd_card_driver_table [0].device_name,
- (rtems_libi2c_drv_t *) &sd_card_driver_table [0],
- spi_busno,
- 0
- );
+ sd_card_driver_table [0].bus = spi_busno;
+ sc = sd_card_register();
+ if (sc != RTEMS_SUCCESSFUL) {
+ return sc;
+ }
#elif defined( MPC8349EAMDS)
diff -u rtems/c/src/lib/libbsp/powerpc/gen83xx/startup/bspstart.c:1.28 rtems/c/src/lib/libbsp/powerpc/gen83xx/startup/bspstart.c:1.29
--- rtems/c/src/lib/libbsp/powerpc/gen83xx/startup/bspstart.c:1.28 Fri Oct 23 02:32:44 2009
+++ rtems/c/src/lib/libbsp/powerpc/gen83xx/startup/bspstart.c Fri Nov 12 08:16:57 2010
@@ -20,6 +20,8 @@
* $Id$
*/
+#include <libchip/serial.h>
+
#include <libcpu/powerpc-utility.h>
#include <bsp.h>
@@ -83,6 +85,7 @@
void bsp_start( void)
{
rtems_status_code sc = RTEMS_SUCCESSFUL;
+ unsigned long i = 0;
ppc_cpu_id_t myCpu;
ppc_cpu_revision_t myCpuRevision;
@@ -127,6 +130,16 @@
bsp_clicks_per_usec = BSP_bus_frequency / 4000000;
#endif /* HAS_UBOOT */
+ /* Initialize some console parameters */
+ for (i = 0; i < Console_Port_Count; ++i) {
+ Console_Port_Tbl [i].ulClock = BSP_bus_frequency;
+
+ #ifdef HAS_UBOOT
+ Console_Port_Tbl [i].pDeviceParams =
+ (void *) bsp_uboot_board_info.bi_baudrate;
+ #endif
+ }
+
/* Initialize exception handler */
sc = ppc_exc_initialize(
PPC_INTERRUPT_DISABLE_MASK_DEFAULT,
--
Generated by Deluxe Loginfo [http://www.codewiz.org/projects/index.html#loginfo] 2.122 by Bernardo Innocenti <bernie at develer.com>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.rtems.org/pipermail/vc/attachments/20101112/fdb0e2d9/attachment.html>
More information about the vc
mailing list