CVS commit: src/sys/arch

2013-03-03 Thread Jochen Kunz
Module Name:src
Committed By:   jkunz
Date:   Sun Mar  3 10:33:56 UTC 2013

Modified Files:
src/sys/arch/arm/imx: imx23_apbdma.c imx23_apbdmareg.h
imx23_apbhdmareg.h imx23_apbxdmareg.h imx23_icollreg.h imx23_ssp.c
src/sys/arch/evbarm/conf: IMX23_OLINUXINO
Added Files:
src/sys/arch/arm/imx: imx23_apbdmavar.h

Log Message:
Contribution from Petri Laakso:
- DMA driver stub code replaced with working code.
- Add support to multi block DMA in ssp driver.


To generate a diff of this commit:
cvs rdiff -u -r1.2 -r1.3 src/sys/arch/arm/imx/imx23_apbdma.c \
src/sys/arch/arm/imx/imx23_icollreg.h src/sys/arch/arm/imx/imx23_ssp.c
cvs rdiff -u -r1.1 -r1.2 src/sys/arch/arm/imx/imx23_apbdmareg.h \
src/sys/arch/arm/imx/imx23_apbhdmareg.h \
src/sys/arch/arm/imx/imx23_apbxdmareg.h
cvs rdiff -u -r0 -r1.1 src/sys/arch/arm/imx/imx23_apbdmavar.h
cvs rdiff -u -r1.2 -r1.3 src/sys/arch/evbarm/conf/IMX23_OLINUXINO

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

Modified files:

Index: src/sys/arch/arm/imx/imx23_apbdma.c
diff -u src/sys/arch/arm/imx/imx23_apbdma.c:1.2 src/sys/arch/arm/imx/imx23_apbdma.c:1.3
--- src/sys/arch/arm/imx/imx23_apbdma.c:1.2	Sun Dec 16 19:40:00 2012
+++ src/sys/arch/arm/imx/imx23_apbdma.c	Sun Mar  3 10:33:56 2013
@@ -1,4 +1,4 @@
-/* $Id: imx23_apbdma.c,v 1.2 2012/12/16 19:40:00 jkunz Exp $ */
+/* $Id: imx23_apbdma.c,v 1.3 2013/03/03 10:33:56 jkunz Exp $ */
 
 /*
  * Copyright (c) 2012 The NetBSD Foundation, Inc.
@@ -30,53 +30,25 @@
  */
 
 #include 
+#include 
 #include 
 #include 
 #include 
+#include 
 #include 
-#include 
 #include 
 
+#include 
 #include 
+#include 
 #include 
 #include 
-#include 
 #include 
 
 static int	apbdma_match(device_t, cfdata_t, void *);
 static void	apbdma_attach(device_t, device_t, void *);
 static int	apbdma_activate(device_t, enum devact);
 
-#define APBDMA_SOFT_RST_LOOP 455 /* At least 1 us ... */
-#define DMACTRL_RD(sc, reg)		\
-		bus_space_read_4(sc->sc_iot, sc->sc_hdl, (reg))
-#define DMACTRL_WR(sc, reg, val)	\
-		bus_space_write_4(sc->sc_iot, sc->sc_hdl, (reg), (val))
-
-struct apbdma_softc {
-	device_t sc_dev;
-	bus_space_tag_t sc_iot;
-	bus_space_handle_t sc_hdl;
-	bus_dma_tag_t sc_dmat;
-	bus_dmamap_t sc_dmamp;
-	struct imx23_dma_channel *sc_channel;
-	int n_channel;
-};
-
-struct imx23_dma_cmd {
-	uint32_t next_cmd;
-	uint32_t cmd;
-	uint32_t buffer;
-	uint32_t pio[CMDPIOWORDS_MAX];
-	SIMPLEQ_ENTRY(imx23_dma_cmd) entries;
-};
-
-struct imx23_dma_channel {
-	SIMPLEQ_HEAD(simplehead, imx23_dma_cmd) head;
-	struct simplehead *headp;
-	struct apbdma_softc *sc;
-};
-
 CFATTACH_DECL3_NEW(apbdma,
 	sizeof(struct apbdma_softc),
 	apbdma_match,
@@ -88,6 +60,14 @@ CFATTACH_DECL3_NEW(apbdma,
 	0);
 
 static void	apbdma_reset(struct apbdma_softc *);
+static void	apbdma_init(struct apbdma_softc *);
+
+#define DMA_RD(sc, reg)			\
+		bus_space_read_4(sc->sc_iot, sc->sc_ioh, (reg))
+#define DMA_WR(sc, reg, val)		\
+		bus_space_write_4(sc->sc_iot, sc->sc_ioh, (reg), (val))
+
+#define APBDMA_SOFT_RST_LOOP 455 /* At least 1 us ... */
 
 static int
 apbdma_match(device_t parent, cfdata_t match, void *aux)
@@ -108,67 +88,44 @@ apbdma_attach(device_t parent, device_t 
 {
 	struct apb_attach_args *aa = aux;
 	struct apbdma_softc *sc = device_private(self);
-	//struct apb_softc *scp = device_private(parent);
-
-//	static int apbdma_attached = 0;
-//	struct imx23_dma_channel *chan;
-//	int i;
-	int error;
+	struct apb_softc *sc_parent = device_private(parent);
+	static u_int apbdma_attached = 0;
 
-//	if (apbdma_attached)
-//		return;
+	if ((strncmp(device_xname(parent), "apbh", 4) == 0) &&
+	(apbdma_attached & F_AHBH_DMA))
+		return;
+	if ((strncmp(device_xname(parent), "apbx", 4) == 0) &&
+	(apbdma_attached & F_AHBX_DMA))
+		return;
 
 	sc->sc_dev = self;
 	sc->sc_iot = aa->aa_iot;
 	sc->sc_dmat = aa->aa_dmat;
 
-	/*
- 	 * Parent bus softc has a pointer to DMA controller device_t for
-	 * specific bus. As different busses need different instances of the
-	 * DMA driver. The apb_softc.dmac is set up here. Now device drivers
-	 * which use DMA can pass apb_softc.dmac from their parent to apbdma
-	 * functions.
-	 */
 	if (bus_space_map(sc->sc_iot,
-	aa->aa_addr, aa->aa_size, 0, &(sc->sc_hdl))) {
+	aa->aa_addr, aa->aa_size, 0, &sc->sc_ioh)) {
 		aprint_error_dev(sc->sc_dev, "unable to map bus space\n");
 		return;
 	}
 
-	error = bus_dmamap_create(sc->sc_dmat, PAGE_SIZE, 1,
-	PAGE_SIZE, 0, BUS_DMA_NOWAIT|BUS_DMA_ALLOCNOW, &sc->sc_dmamp);
-	if (error) {
-		aprint_error_dev(sc->sc_dev,
-			"couldn't create dma map. (error=%d)\n", error);
-		return;
-	}
-#ifdef notyet	
-	if (aa->aa_addr == HW_APBHDMA_BASE && aa->aa_size == HW_APBHDMA_SIZE) {
-		sc->sc_channel = kmem_alloc(sizeof(struct imx23_dma_channel)
-		* APBH_DMA_N_CHANNELS, KM_SLEEP);
-		sc->n_channel = APBH_DMA_N_CHANNELS;
-	}
+	if (strncmp(device_xname(parent), "apbh", 4) =

CVS commit: src/sys/arch/evbarm

2013-02-23 Thread Jochen Kunz
Module Name:src
Committed By:   jkunz
Date:   Sat Feb 23 16:22:39 UTC 2013

Modified Files:
src/sys/arch/evbarm/imx23_olinuxino: imx23_olinuxino_machdep.c
src/sys/arch/evbarm/stand/bootimx23: Makefile boot_prep.c common.c
common.h
Added Files:
src/sys/arch/evbarm/stand/bootimx23: args_prep.c

Log Message:
Contribution from Petri Laakso:
- Support for passing kernel arguments.
- entropy_init() removed as OLINUXINO doesn't generate entropy bits without
  user interaction.
- FIFO contents are flushed when DEBUG is enabled.


To generate a diff of this commit:
cvs rdiff -u -r1.1 -r1.2 \
src/sys/arch/evbarm/imx23_olinuxino/imx23_olinuxino_machdep.c
cvs rdiff -u -r1.4 -r1.5 src/sys/arch/evbarm/stand/bootimx23/Makefile
cvs rdiff -u -r0 -r1.1 src/sys/arch/evbarm/stand/bootimx23/args_prep.c
cvs rdiff -u -r1.2 -r1.3 src/sys/arch/evbarm/stand/bootimx23/boot_prep.c \
src/sys/arch/evbarm/stand/bootimx23/common.c \
src/sys/arch/evbarm/stand/bootimx23/common.h

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

Modified files:

Index: src/sys/arch/evbarm/imx23_olinuxino/imx23_olinuxino_machdep.c
diff -u src/sys/arch/evbarm/imx23_olinuxino/imx23_olinuxino_machdep.c:1.1 src/sys/arch/evbarm/imx23_olinuxino/imx23_olinuxino_machdep.c:1.2
--- src/sys/arch/evbarm/imx23_olinuxino/imx23_olinuxino_machdep.c:1.1	Tue Nov 20 19:08:45 2012
+++ src/sys/arch/evbarm/imx23_olinuxino/imx23_olinuxino_machdep.c	Sat Feb 23 16:22:38 2013
@@ -1,4 +1,4 @@
-/* $Id: imx23_olinuxino_machdep.c,v 1.1 2012/11/20 19:08:45 jkunz Exp $ */
+/* $Id: imx23_olinuxino_machdep.c,v 1.2 2013/02/23 16:22:38 jkunz Exp $ */
 
 /*
  * Copyright (c) 2012 The NetBSD Foundation, Inc.
@@ -38,6 +38,7 @@
 #include 
 #include 
 #include 
+#include 
 #include 
 #include 
 
@@ -94,11 +95,11 @@ static const struct pmap_devmap imx23_de
 static vm_offset_t physical_freestart;
 static vm_offset_t physical_freeend;
 static u_int free_pages;
-//static rndsave_t imx23_boot_rsp;
 
 BootConfig bootconfig;
 vm_offset_t physical_start;
 vm_offset_t physical_end;
+static char kernel_boot_args[MAX_BOOT_STRING];
 char *boot_args;
 paddr_t msgbufphys;
 
@@ -142,6 +143,9 @@ pv_addr_t kernel_pt_table[NUM_KERNEL_PTS
 #define	KERNEL_VM_BASE	(KERNEL_BASE + 0x0100)
 #define KERNEL_VM_SIZE 	(0xf000 - KERNEL_VM_BASE)
 
+#define L1_PAGE_TABLE (DRAM_BASE + MEMSIZE * 1024 * 1024 - L1_TABLE_SIZE)
+#define BOOTIMX23_ARGS (L1_PAGE_TABLE - MAX_BOOT_STRING - 1)
+
 #define REG_RD(reg) *(volatile uint32_t *)(reg)
 #define REG_WR(reg, val)		\
 do {	\
@@ -163,7 +167,6 @@ initarm(void *arg)
 	cpu_domains((DOMAIN_CLIENT << (PMAP_DOMAIN_KERNEL*2)) | DOMAIN_CLIENT);
 
 	consinit();
-	//entropy_init();
 
 	/* Talk to the user. */
 #define BDSTR(s)	_BDSTR(s)
@@ -172,7 +175,14 @@ initarm(void *arg)
 #undef BDSTR
 #undef _BDSTR
 
-	boot_args[0] = '\0';
+	/* Copy boot arguments passed from bootimx23. */
+	boot_args = (char *)BOOTIMX23_ARGS;
+	memcpy(kernel_boot_args, boot_args, MAX_BOOT_STRING);
+	boot_args = kernel_boot_args;
+#ifdef VERBOSE_INIT_ARM
+	printf("boot_args: %s\n", boot_args);
+#endif
+	parse_mi_bootargs(boot_args);
 
 #ifdef VERBOSE_INIT_ARM
 	printf("initarm: Configuring system ...\n");
@@ -520,38 +530,6 @@ setup_real_page_tables(void)
 }
 
 /*
- * Generate initial random bits for rnd_init().
- */
-#ifdef notyet
-static void
-entropy_init(void)
-{
-	uint32_t tmp;
-	int loop, index;
-
-	/* Test if HW_DIGCTL_ENTROPY is feeding random numbers. */
-	tmp = REG_RD(HW_DIGCTL_BASE + HW_DIGCTL_ENTROPY);
-	if (tmp == REG_RD(HW_DIGCTL_BASE + HW_DIGCTL_ENTROPY))
-		return;
-
-	index = 0;
-	for (loop = 0; loop < RND_SAVEWORDS; loop++) {
-		imx23_boot_rsp.data[index++] = (uint8_t)(tmp);
-		imx23_boot_rsp.data[index++] = (uint8_t)(tmp>>8);
-		imx23_boot_rsp.data[index++] = (uint8_t)(tmp>>16);
-		imx23_boot_rsp.data[index++] = (uint8_t)(tmp>>24);
-		imx23_boot_rsp.entropy += 32;
-		tmp = REG_RD(HW_DIGCTL_BASE + HW_DIGCTL_ENTROPY);
-	}
-
-	extern rndsave_t *boot_rsp;
-	boot_rsp = &imx23_boot_rsp;
-
-	return;
-}
-#endif
-
-/*
  * Initialize console.
  */
 static struct plcom_instance imx23_pi = {

Index: src/sys/arch/evbarm/stand/bootimx23/Makefile
diff -u src/sys/arch/evbarm/stand/bootimx23/Makefile:1.4 src/sys/arch/evbarm/stand/bootimx23/Makefile:1.5
--- src/sys/arch/evbarm/stand/bootimx23/Makefile:1.4	Wed Feb  6 07:19:19 2013
+++ src/sys/arch/evbarm/stand/bootimx23/Makefile	Sat Feb 23 16:22:39 2013
@@ -1,15 +1,16 @@
-# $Id: Makefile,v 1.4 2013/02/06 07:19:19 matt Exp $
+# $Id: Makefile,v 1.5 2013/02/23 16:22:39 jkunz Exp $
 
 S=		${.CURDIR}/../../../../
 PROG=		bootimx23
-SRCS=		boot_prep.c power_prep.c clock_prep.c emi_prep.c \
-		pinctrl_prep.c common.c
+SRCS=		args_prep.c boot_prep.c clock_prep.c common.c emi_prep.c \
+		pinctrl_prep.c power_prep.c
 
 .include 
 
 CLEANFILES+=	${PROG}
 CFLAGS+=	-Wall -Wno-main -ffreestanding -march=armv5te -mtune=arm926ej-s
-CPPFLAGS+=	-D_STA

CVS commit: src/sys/arch/evbarm/stand/bootimx23

2013-02-07 Thread Jochen Kunz
Module Name:src
Committed By:   jkunz
Date:   Thu Feb  7 21:56:36 UTC 2013

Modified Files:
src/sys/arch/evbarm/stand/bootimx23: pinctrl_prep.c

Log Message:
Contribution from Petri Laakso:
Enable debug UART input
Fixes issue with some OLinuXino boards which were not able to
accept input from the user.


To generate a diff of this commit:
cvs rdiff -u -r1.2 -r1.3 src/sys/arch/evbarm/stand/bootimx23/pinctrl_prep.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/arch/evbarm/stand/bootimx23/pinctrl_prep.c
diff -u src/sys/arch/evbarm/stand/bootimx23/pinctrl_prep.c:1.2 src/sys/arch/evbarm/stand/bootimx23/pinctrl_prep.c:1.3
--- src/sys/arch/evbarm/stand/bootimx23/pinctrl_prep.c:1.2	Sun Dec 16 19:08:44 2012
+++ src/sys/arch/evbarm/stand/bootimx23/pinctrl_prep.c	Thu Feb  7 21:56:36 2013
@@ -1,4 +1,4 @@
-/* $Id: pinctrl_prep.c,v 1.2 2012/12/16 19:08:44 jkunz Exp $ */
+/* $Id: pinctrl_prep.c,v 1.3 2013/02/07 21:56:36 jkunz Exp $ */
 
 /*
  * Copyright (c) 2012 The NetBSD Foundation, Inc.
@@ -42,9 +42,10 @@
 static void configure_emi_mux(void);
 static void configure_emi_drive(int);
 static void disable_emi_padkeepers(void);
-static void configure_ssp_mux();
+static void configure_ssp_mux(void);
 static void configure_ssp_drive(int);
 static void configure_ssp_pullups(void);
+static void configure_dbuart_mux(void);
 
 /* EMI pins output drive strengths */
 #define DRIVE_04_MA	0x0	/* 4 mA */
@@ -72,6 +73,9 @@ pinctrl_prep(void)
 	configure_ssp_drive(DRIVE_16_MA);
 	configure_ssp_pullups();
 
+	/* Debug UART. */
+	configure_dbuart_mux();
+
 	return 0;
 }
 
@@ -484,3 +488,19 @@ configure_ssp_pullups(void)
 
 	return;
 }
+
+/*
+ * Configure Debug UART MUX.
+ */
+static
+void configure_dbuart_mux(void)
+{
+	REG_WR(HW_PINCTRL_BASE + HW_PINCTRL_MUXSEL3_CLR,
+	__SHIFTIN(0x3, HW_PINCTRL_MUXSEL3_BANK1_PIN27) |
+	__SHIFTIN(0x3, HW_PINCTRL_MUXSEL3_BANK1_PIN26));
+	REG_WR(HW_PINCTRL_BASE + HW_PINCTRL_MUXSEL3_SET,
+	__SHIFTIN(0x2, HW_PINCTRL_MUXSEL3_BANK1_PIN27) |
+	__SHIFTIN(0x2, HW_PINCTRL_MUXSEL3_BANK1_PIN26));
+
+	return;
+}



CVS commit: src/sys/arch

2012-12-16 Thread Jochen Kunz
Module Name:src
Committed By:   jkunz
Date:   Sun Dec 16 19:45:52 UTC 2012

Modified Files:
src/sys/arch/arm/imx: imx23_ssp.c
src/sys/arch/evbarm/conf: IMX23_OLINUXINO

Log Message:
Contribution from Petri Laakso: Initial support for SD card controller.
iMX233-OLinuXino can now boot and run from its own SD card.


To generate a diff of this commit:
cvs rdiff -u -r1.1 -r1.2 src/sys/arch/arm/imx/imx23_ssp.c
cvs rdiff -u -r1.1 -r1.2 src/sys/arch/evbarm/conf/IMX23_OLINUXINO

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

Modified files:

Index: src/sys/arch/arm/imx/imx23_ssp.c
diff -u src/sys/arch/arm/imx/imx23_ssp.c:1.1 src/sys/arch/arm/imx/imx23_ssp.c:1.2
--- src/sys/arch/arm/imx/imx23_ssp.c:1.1	Tue Nov 20 19:06:14 2012
+++ src/sys/arch/arm/imx/imx23_ssp.c	Sun Dec 16 19:45:52 2012
@@ -1,4 +1,4 @@
-/* $Id: imx23_ssp.c,v 1.1 2012/11/20 19:06:14 jkunz Exp $ */
+/* $Id: imx23_ssp.c,v 1.2 2012/12/16 19:45:52 jkunz Exp $ */
 
 /*
  * Copyright (c) 2012 The NetBSD Foundation, Inc.
@@ -33,15 +33,10 @@
 #include 
 #include 
 #include 
-#include 
 #include 
 #include 
 #include 
 
-#include 
-
-#include 
-#include 
 #include 
 #include 
 
@@ -50,7 +45,7 @@
 #include 
 
 /*
- * SD/MMC host controller driver for i.MX233.
+ * SD/MMC host controller driver for i.MX23.
  */
 
 struct issp_softc {
@@ -65,7 +60,11 @@ static int	issp_match(device_t, cfdata_t
 static void	issp_attach(device_t, device_t, void *);
 static int	issp_activate(device_t, enum devact);
 
-/* sdmmc chip function prototypes. */
+static void	issp_reset(struct issp_softc *);
+static void	issp_init(struct issp_softc *);
+static uint32_t	issp_set_sck(struct issp_softc *, uint32_t target);
+
+/* sdmmc(4) driver chip function prototypes. */
 static int	issp_host_reset(sdmmc_chipset_handle_t);
 static uint32_t	issp_host_ocr(sdmmc_chipset_handle_t);
 static int	issp_host_maxblklen(sdmmc_chipset_handle_t);
@@ -80,23 +79,6 @@ static void	issp_exec_command(sdmmc_chip
 static void	issp_card_enable_intr(sdmmc_chipset_handle_t, int);
 static void	issp_card_intr_ack(sdmmc_chipset_handle_t);
 
-/* Used from the above callbacks. */
-static void	issp_reset(struct issp_softc *);
-static void	issp_init(struct issp_softc *);
-static uint32_t	issp_set_sck(struct issp_softc *, uint32_t target);
-
-#define SSP_SOFT_RST_LOOP 455	/* At least 1 us ... */
-
-CFATTACH_DECL3_NEW(ssp,
-	sizeof(struct issp_softc),
-	issp_match,
-	issp_attach,
-	NULL,
-	issp_activate,
-	NULL,
-	NULL,
-	0);
-
 static struct sdmmc_chip_functions issp_functions = {
 	.host_reset	= issp_host_reset,
 	.host_ocr	= issp_host_ocr,
@@ -112,22 +94,45 @@ static struct sdmmc_chip_functions issp_
 	.card_intr_ack	= issp_card_intr_ack
 };
 
-#define SSP_READ(sc, reg)		\
+CFATTACH_DECL3_NEW(ssp,
+	sizeof(struct issp_softc),
+	issp_match,
+	issp_attach,
+	NULL,
+	issp_activate,
+	NULL,
+	NULL,
+	0);
+
+#define SSP_SOFT_RST_LOOP 455	/* At least 1 us ... */
+
+#define SSP_RD(sc, reg)			\
 	bus_space_read_4(sc->sc_iot, sc->sc_hdl, (reg))
-#define SSP_WRITE(sc, reg, val)		\
+#define SSP_WR(sc, reg, val)		\
 	bus_space_write_4(sc->sc_iot, sc->sc_hdl, (reg), (val))
 
-#define SSP_CLK			9600 /* CLK_SSP from PLL is 96 MHz */
-#define SSP_CLK_MIN		2	 /* 2 kHz */
-#define SSP_CLK_MAX		48000	 /* 48 MHz */
-/* SSP_CMD_TIMEOUT is calculated as (1.0/SSP_SCK)*(SSP_CMD_TIMEOUT*4096) */
-#define SSP_CMD_TIMEOUT		0x	/* 2.8 seconds. */
-#define SSP_STATUS_ERR (HW_SSP_STATUS_RESP_CRC_ERR |			\
+#define SSP_CLK		9600	/* CLK_SSP from PLL is 96 MHz */
+#define SSP_CLK_MIN	400		/* 400 kHz */
+#define SSP_CLK_MAX	48000		/* 48 MHz */
+
+#define SSP_BUSY (HW_SSP_STATUS_CMD_BUSY |\
+			HW_SSP_STATUS_DATA_BUSY |			\
+			HW_SSP_STATUS_BUSY)
+
+#define SSP_RUN_ERR (HW_SSP_STATUS_RESP_CRC_ERR |			\
 			HW_SSP_STATUS_RESP_ERR |			\
 			HW_SSP_STATUS_RESP_TIMEOUT |			\
 			HW_SSP_STATUS_DATA_CRC_ERR |			\
 			HW_SSP_STATUS_TIMEOUT)
 
+#define BLKIO_NONE 0
+#define BLKIO_RD 1
+#define BLKIO_WR 2
+
+#define BUS_WIDTH_1_BIT 0x0
+#define BUS_WIDTH_4_BIT 0x1
+#define BUS_WIDTH_8_BIT 0x2
+
 static int
 issp_match(device_t parent, cfdata_t match, void *aux)
 {
@@ -145,25 +150,18 @@ issp_match(device_t parent, cfdata_t mat
 static void
 issp_attach(device_t parent, device_t self, void *aux)
 {
-	static int issp_attached = 0;
 	struct issp_softc *sc = device_private(self);
-	struct apb_softc *scp = device_private(parent);
+	struct apb_softc *sc_parent = device_private(parent);
 	struct apb_attach_args *aa = aux;
 	struct sdmmcbus_attach_args saa;
-	
-	
+	static int issp_attached = 0;
+
 	if (issp_attached)
 		return;
 
-//XXX:
-	if (scp == NULL)
-		printf("ISSP_ATTACH: scp == NULL\n");
-	if (scp->dmac == NULL)
-		printf("ISSP_ATTACH: scp->dmac == NULL\n");
-
 	sc->sc_dev = self;
 	sc->sc_iot = aa->aa_iot;
-	sc->dmac = scp->dmac;
+	sc->dmac = sc_parent->dmac;
 
 	if (bus_space_map(sc->sc_iot,
 	aa->aa_addr, aa->aa_size, 0, &(sc->sc_hd

CVS commit: src/sys/arch/arm/imx

2012-12-16 Thread Jochen Kunz
Module Name:src
Committed By:   jkunz
Date:   Sun Dec 16 19:40:01 UTC 2012

Modified Files:
src/sys/arch/arm/imx: imx23_apbdma.c imx23_icoll.c imx23_icollreg.h
imx23_timrot.c

Log Message:
Contribution from Petri Laakso: Fix some spelling.


To generate a diff of this commit:
cvs rdiff -u -r1.1 -r1.2 src/sys/arch/arm/imx/imx23_apbdma.c \
src/sys/arch/arm/imx/imx23_icoll.c src/sys/arch/arm/imx/imx23_icollreg.h \
src/sys/arch/arm/imx/imx23_timrot.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/arch/arm/imx/imx23_apbdma.c
diff -u src/sys/arch/arm/imx/imx23_apbdma.c:1.1 src/sys/arch/arm/imx/imx23_apbdma.c:1.2
--- src/sys/arch/arm/imx/imx23_apbdma.c:1.1	Tue Nov 20 19:06:12 2012
+++ src/sys/arch/arm/imx/imx23_apbdma.c	Sun Dec 16 19:40:00 2012
@@ -1,4 +1,4 @@
-/* $Id: imx23_apbdma.c,v 1.1 2012/11/20 19:06:12 jkunz Exp $ */
+/* $Id: imx23_apbdma.c,v 1.2 2012/12/16 19:40:00 jkunz Exp $ */
 
 /*
  * Copyright (c) 2012 The NetBSD Foundation, Inc.
@@ -184,7 +184,7 @@ apbdma_activate(device_t self, enum deva
 /*
  * Reset the APB{H,X}DMA block.
  *
- * Inspired by i.MX233 RM "39.3.10 Correct Way to Soft Reset a Block"
+ * Inspired by i.MX23 RM "39.3.10 Correct Way to Soft Reset a Block"
  */
 static void
 apbdma_reset(struct apbdma_softc *sc)
Index: src/sys/arch/arm/imx/imx23_icoll.c
diff -u src/sys/arch/arm/imx/imx23_icoll.c:1.1 src/sys/arch/arm/imx/imx23_icoll.c:1.2
--- src/sys/arch/arm/imx/imx23_icoll.c:1.1	Tue Nov 20 19:06:13 2012
+++ src/sys/arch/arm/imx/imx23_icoll.c	Sun Dec 16 19:40:00 2012
@@ -1,4 +1,4 @@
-/* $Id: imx23_icoll.c,v 1.1 2012/11/20 19:06:13 jkunz Exp $ */
+/* $Id: imx23_icoll.c,v 1.2 2012/12/16 19:40:00 jkunz Exp $ */
 
 /*
  * Copyright (c) 2012 The NetBSD Foundation, Inc.
@@ -317,7 +317,7 @@ icoll_activate(device_t self, enum devac
 /*
  * Reset the ICOLL block.
  *
- * Inspired by i.MX233 RM "39.3.10 Correct Way to Soft Reset a Block"
+ * Inspired by i.MX23 RM "39.3.10 Correct Way to Soft Reset a Block"
  */
 static void
 icoll_reset(struct icoll_softc *sc)
Index: src/sys/arch/arm/imx/imx23_icollreg.h
diff -u src/sys/arch/arm/imx/imx23_icollreg.h:1.1 src/sys/arch/arm/imx/imx23_icollreg.h:1.2
--- src/sys/arch/arm/imx/imx23_icollreg.h:1.1	Tue Nov 20 19:06:13 2012
+++ src/sys/arch/arm/imx/imx23_icollreg.h	Sun Dec 16 19:40:00 2012
@@ -1,4 +1,4 @@
-/* $Id: imx23_icollreg.h,v 1.1 2012/11/20 19:06:13 jkunz Exp $ */
+/* $Id: imx23_icollreg.h,v 1.2 2012/12/16 19:40:00 jkunz Exp $ */
 
 /*
  * Copyright (c) 2012 The NetBSD Foundation, Inc.
@@ -38,7 +38,7 @@
 #define HW_ICOLL_SIZE 0x2000
 
 /*
- * IRQ numbers known to i.MX233.
+ * IRQ numbers known to i.MX23.
  */
 #define IRQ_DEBUG_UART		0 /* Non DMA on the debug UART */
 #define IRQ_COMMS_RX		1 /* JTAG debug communications port */
@@ -125,7 +125,7 @@
 
 		/* IRQ's 66-127 are reserved. */
 
-#define IRQ_MAX			127 /* Number or IRQ registers on i.MX233. */
+#define IRQ_MAX			127 /* Number or IRQ registers on i.MX23. */
 
 
 /*
Index: src/sys/arch/arm/imx/imx23_timrot.c
diff -u src/sys/arch/arm/imx/imx23_timrot.c:1.1 src/sys/arch/arm/imx/imx23_timrot.c:1.2
--- src/sys/arch/arm/imx/imx23_timrot.c:1.1	Tue Nov 20 19:06:14 2012
+++ src/sys/arch/arm/imx/imx23_timrot.c	Sun Dec 16 19:40:00 2012
@@ -1,4 +1,4 @@
-/* $Id: imx23_timrot.c,v 1.1 2012/11/20 19:06:14 jkunz Exp $ */
+/* $Id: imx23_timrot.c,v 1.2 2012/12/16 19:40:00 jkunz Exp $ */
 
 /*
  * Copyright (c) 2012 The NetBSD Foundation, Inc.
@@ -290,7 +290,7 @@ stattimer_irq(void *frame)
 /*
  * Reset the TIMROT block.
  *
- * Inspired by i.MX233 RM "39.3.10 Correct Way to Soft Reset a Block"
+ * Inspired by i.MX23 RM "39.3.10 Correct Way to Soft Reset a Block"
  */
 static void
 timrot_reset(void)



CVS commit: src/sys/arch/evbarm/stand/bootimx23

2012-12-16 Thread Jochen Kunz
Module Name:src
Committed By:   jkunz
Date:   Sun Dec 16 19:08:45 UTC 2012

Modified Files:
src/sys/arch/evbarm/stand/bootimx23: boot_prep.c bootimx23.bd
clock_prep.c common.c common.h emi_prep.c pinctrl_prep.c
power_prep.c

Log Message:
Contribution from Petri Laakso.
Refactoring of bootimx23:
- Code style clean up.
- Don't do DCDC initialization in bootimx23. This has proven to be
  unreliable. DCDC initialization will be done in kernel later.
  Use linear regulators while booting to make bootimx23 reliable.


To generate a diff of this commit:
cvs rdiff -u -r1.1 -r1.2 src/sys/arch/evbarm/stand/bootimx23/boot_prep.c \
src/sys/arch/evbarm/stand/bootimx23/clock_prep.c \
src/sys/arch/evbarm/stand/bootimx23/common.c \
src/sys/arch/evbarm/stand/bootimx23/common.h \
src/sys/arch/evbarm/stand/bootimx23/emi_prep.c \
src/sys/arch/evbarm/stand/bootimx23/pinctrl_prep.c
cvs rdiff -u -r1.2 -r1.3 src/sys/arch/evbarm/stand/bootimx23/bootimx23.bd \
src/sys/arch/evbarm/stand/bootimx23/power_prep.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/arch/evbarm/stand/bootimx23/boot_prep.c
diff -u src/sys/arch/evbarm/stand/bootimx23/boot_prep.c:1.1 src/sys/arch/evbarm/stand/bootimx23/boot_prep.c:1.2
--- src/sys/arch/evbarm/stand/bootimx23/boot_prep.c:1.1	Tue Nov 20 19:08:46 2012
+++ src/sys/arch/evbarm/stand/bootimx23/boot_prep.c	Sun Dec 16 19:08:44 2012
@@ -1,4 +1,4 @@
-/* $Id: boot_prep.c,v 1.1 2012/11/20 19:08:46 jkunz Exp $ */
+/* $Id: boot_prep.c,v 1.2 2012/12/16 19:08:44 jkunz Exp $ */
 
 /*
  * Copyright (c) 2012 The NetBSD Foundation, Inc.
@@ -39,15 +39,15 @@
 #include "common.h"
 
 /*
- * Initialize i.MX23 power, clock and DRAM.
+ * Initialize i.MX23 power, clocks and DRAM.
  */
 int
 _start(void)
 {
 
-	/* Make sure timer is running */
-	REG_WRITE(HW_DIGCTL_BASE + HW_DIGCTL_CTRL_CLR,
-		HW_DIGCTL_CTRL_XTAL24M_GATE);
+	/* Make sure timer is running. */
+	REG_WR(HW_DIGCTL_BASE + HW_DIGCTL_CTRL_CLR,
+	HW_DIGCTL_CTRL_XTAL24M_GATE);
 
 	printf("\n\rBooting");
 
@@ -58,7 +58,6 @@ _start(void)
 	putchar('.');
 
 	pinctrl_prep();
-	delay_us(1000);
 	putchar('.');
 	
 	emi_prep();
Index: src/sys/arch/evbarm/stand/bootimx23/clock_prep.c
diff -u src/sys/arch/evbarm/stand/bootimx23/clock_prep.c:1.1 src/sys/arch/evbarm/stand/bootimx23/clock_prep.c:1.2
--- src/sys/arch/evbarm/stand/bootimx23/clock_prep.c:1.1	Tue Nov 20 19:08:46 2012
+++ src/sys/arch/evbarm/stand/bootimx23/clock_prep.c	Sun Dec 16 19:08:44 2012
@@ -1,4 +1,4 @@
-/* $Id: clock_prep.c,v 1.1 2012/11/20 19:08:46 jkunz Exp $ */
+/* $Id: clock_prep.c,v 1.2 2012/12/16 19:08:44 jkunz Exp $ */
 
 /*
  * Copyright (c) 2012 The NetBSD Foundation, Inc.
@@ -39,26 +39,28 @@
 
 #include "common.h"
 
-void enable_pll(void);
-void enable_ref_cpu(int);
-void enable_ref_emi(int);
-void enable_ref_io(int);
-void use_ref_cpu(void);
-void use_ref_emi(void);
-void use_ref_io(void);
-void set_hbus_div(int);
-void set_emi_div(int);
-void set_ssp_div(int);
-
-/* Clock frequences after clock_prep() */
-#define CPU_FRAC 0x13		/* CPUCLK @ 454.74 MHz */
-#define HBUS_DIV 0x3		/* AHBCLK @ 151.58 MHz */
-#define EMI_FRAC 0x21		/* EMICLK @ 130.91 MHz */
-#define EMI_DIV 0x2
-#define IO_FRAC 0x12		/* IOCLK  @ 480.00 MHz */
-#define SSP_DIV 0x5		/* SSPCLK @  96.00 MHz */
+static void enable_pll(void);
+static void enable_ref_cpu(int);
+static void enable_ref_emi(int);
+static void enable_ref_io(int);
+static void use_ref_cpu(void);
+static void use_ref_emi(void);
+static void use_ref_io(void);
+static void set_hbus_div(int);
+static void set_emi_div(int);
+static void set_ssp_div(int);
+
+/*
+ * Clock frequences set by clock_prep()
+ */
+#define CPU_FRAC	0x13		/* CPUCLK @ 454.74 MHz */
+#define HBUS_DIV	0x3		/* AHBCLK @ 151.58 MHz */
+#define EMI_FRAC	0x21		/* EMICLK @ 130.91 MHz */
+#define EMI_DIV		0x2
+#define IO_FRAC		0x12		/* IOCLK  @ 480.00 MHz */
+#define SSP_DIV		0x5		/* SSPCLK @  96.00 MHz */
 
-/* Offset to frac register for byte store instructions. (strb) */
+/* Offset to frac register for CLKCTRL_WR_BYTE macro. */
 #define HW_CLKCTRL_FRAC_CPU (HW_CLKCTRL_FRAC+0)
 #define HW_CLKCTRL_FRAC_EMI (HW_CLKCTRL_FRAC+1)
 #define HW_CLKCTRL_FRAC_IO (HW_CLKCTRL_FRAC+3)
@@ -86,9 +88,7 @@ clock_prep(void)
 	enable_ref_io(IO_FRAC);
 	set_emi_div(EMI_DIV);
 	set_hbus_div(HBUS_DIV);
-	delay_us(1000);
 	use_ref_cpu();
-	//delay_us(1000);
 	use_ref_emi();
 	use_ref_io();
 	set_ssp_div(SSP_DIV);
@@ -99,7 +99,7 @@ clock_prep(void)
 /*
  * Turn PLL on and wait until it's locked to 480 MHz.
  */
-void
+static void
 enable_pll(void)
 {
 
@@ -112,7 +112,7 @@ enable_pll(void)
 /*
  * Enable fractional divider clock ref_cpu with divide value "frac".
  */
-void
+static void
 enable_ref_cpu(int frac)
 {
 	uint32_t reg;
@@ -128,7 +128,7 @@ enable_ref_cpu(int frac)
 /*
  * Enable fractional divider clock ref_emi with divide value "frac".
  */
-void
+stat

CVS commit: src/share/man/man4

2012-11-27 Thread Jochen Kunz
Module Name:src
Committed By:   jkunz
Date:   Tue Nov 27 20:06:37 UTC 2012

Modified Files:
src/share/man/man4: ugen.4

Log Message:
Fix typo.


To generate a diff of this commit:
cvs rdiff -u -r1.30 -r1.31 src/share/man/man4/ugen.4

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

Modified files:

Index: src/share/man/man4/ugen.4
diff -u src/share/man/man4/ugen.4:1.30 src/share/man/man4/ugen.4:1.31
--- src/share/man/man4/ugen.4:1.30	Wed Dec 23 09:10:07 2009
+++ src/share/man/man4/ugen.4	Tue Nov 27 20:06:36 2012
@@ -1,4 +1,4 @@
-.\" $NetBSD: ugen.4,v 1.30 2009/12/23 09:10:07 wiz Exp $
+.\" $NetBSD: ugen.4,v 1.31 2012/11/27 20:06:36 jkunz Exp $
 .\"
 .\" Copyright (c) 1999 The NetBSD Foundation, Inc.
 .\" All rights reserved.
@@ -189,7 +189,7 @@ This operation can only be performed whe
 are open.
 .It Dv USB_GET_NO_ALT (struct usb_alt_interface)
 Return the number of different alternate settings in the
-.Dv aui_alt_no
+.Dv uai_alt_no
 field.
 .It Dv USB_GET_DEVICE_DESC (usb_device_descriptor_t)
 Return the device descriptor.



CVS commit: src

2012-11-27 Thread Jochen Kunz
Module Name:src
Committed By:   jkunz
Date:   Tue Nov 27 20:00:39 UTC 2012

Modified Files:
src/external/bsd/elftosb/lib: Makefile
src/external/bsd/elftosb/usr.sbin/elftosb: Makefile
src/external/bsd/elftosb/usr.sbin/sbkeygen: Makefile
src/external/bsd/elftosb/usr.sbin/sbtool: Makefile
src/sys/arch/evbarm/stand: Makefile
src/tools: Makefile

Log Message:
According to the i.MX23 Reference Manual section 3.1, Page 3-3:
"The i.MX23 always operates in litle-endian mode."
So build elftosb and bootloader for this processor only for evbarm(-el).


To generate a diff of this commit:
cvs rdiff -u -r1.3 -r1.4 src/external/bsd/elftosb/lib/Makefile
cvs rdiff -u -r1.1 -r1.2 src/external/bsd/elftosb/usr.sbin/elftosb/Makefile
cvs rdiff -u -r1.1 -r1.2 src/external/bsd/elftosb/usr.sbin/sbkeygen/Makefile
cvs rdiff -u -r1.1 -r1.2 src/external/bsd/elftosb/usr.sbin/sbtool/Makefile
cvs rdiff -u -r1.3 -r1.4 src/sys/arch/evbarm/stand/Makefile
cvs rdiff -u -r1.160 -r1.161 src/tools/Makefile

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

Modified files:

Index: src/external/bsd/elftosb/lib/Makefile
diff -u src/external/bsd/elftosb/lib/Makefile:1.3 src/external/bsd/elftosb/lib/Makefile:1.4
--- src/external/bsd/elftosb/lib/Makefile:1.3	Fri Nov 16 05:39:25 2012
+++ src/external/bsd/elftosb/lib/Makefile	Tue Nov 27 20:00:38 2012
@@ -1,6 +1,6 @@
-# $NetBSD: Makefile,v 1.3 2012/11/16 05:39:25 christos Exp $
+# $NetBSD: Makefile,v 1.4 2012/11/27 20:00:38 jkunz Exp $
 
-.if (${MACHINE} == "evbarm")
+.if (${MACHINE} == "evbarm") && (${MACHINE_ARCH} == "arm")
 LIBISPRIVATE=	yes
 LIB=		elftosb
 SRCS=		AESKey.cpp \

Index: src/external/bsd/elftosb/usr.sbin/elftosb/Makefile
diff -u src/external/bsd/elftosb/usr.sbin/elftosb/Makefile:1.1 src/external/bsd/elftosb/usr.sbin/elftosb/Makefile:1.2
--- src/external/bsd/elftosb/usr.sbin/elftosb/Makefile:1.1	Thu Nov 15 19:49:16 2012
+++ src/external/bsd/elftosb/usr.sbin/elftosb/Makefile	Tue Nov 27 20:00:38 2012
@@ -1,10 +1,10 @@
-# $NetBSD: Makefile,v 1.1 2012/11/15 19:49:16 jkunz Exp $
+# $NetBSD: Makefile,v 1.2 2012/11/27 20:00:38 jkunz Exp $
 
 .include 
 
 .PATH:		${DIST}/elftosb2
 
-.if (${MACHINE} == "evbarm")
+.if (${MACHINE} == "evbarm") && (${MACHINE_ARCH} == "arm")
 PROG_CXX=	elftosb
 SRCS=		BootImageGenerator.cpp \
 		ConversionController.cpp \

Index: src/external/bsd/elftosb/usr.sbin/sbkeygen/Makefile
diff -u src/external/bsd/elftosb/usr.sbin/sbkeygen/Makefile:1.1 src/external/bsd/elftosb/usr.sbin/sbkeygen/Makefile:1.2
--- src/external/bsd/elftosb/usr.sbin/sbkeygen/Makefile:1.1	Thu Nov 15 19:49:16 2012
+++ src/external/bsd/elftosb/usr.sbin/sbkeygen/Makefile	Tue Nov 27 20:00:39 2012
@@ -1,10 +1,10 @@
-# $NetBSD: Makefile,v 1.1 2012/11/15 19:49:16 jkunz Exp $
+# $NetBSD: Makefile,v 1.2 2012/11/27 20:00:39 jkunz Exp $
 
 .include 
 
 .PATH:		${DIST}/keygen
 
-.if (${MACHINE} == "evbarm")
+.if (${MACHINE} == "evbarm") && (${MACHINE_ARCH} == "arm")
 PROG_CXX=	sbkeygen
 SRCS=		keygen.cpp
 .endif

Index: src/external/bsd/elftosb/usr.sbin/sbtool/Makefile
diff -u src/external/bsd/elftosb/usr.sbin/sbtool/Makefile:1.1 src/external/bsd/elftosb/usr.sbin/sbtool/Makefile:1.2
--- src/external/bsd/elftosb/usr.sbin/sbtool/Makefile:1.1	Thu Nov 15 19:49:17 2012
+++ src/external/bsd/elftosb/usr.sbin/sbtool/Makefile	Tue Nov 27 20:00:39 2012
@@ -1,10 +1,10 @@
-# $NetBSD: Makefile,v 1.1 2012/11/15 19:49:17 jkunz Exp $
+# $NetBSD: Makefile,v 1.2 2012/11/27 20:00:39 jkunz Exp $
 
 .include 
 
 .PATH:		${DIST}/sbtool
 
-.if (${MACHINE} == "evbarm")
+.if (${MACHINE} == "evbarm") && (${MACHINE_ARCH} == "arm")
 PROG_CXX=	sbtool
 SRCS=		EncoreBootImageReader.cpp sbtool.cpp
 .endif

Index: src/sys/arch/evbarm/stand/Makefile
diff -u src/sys/arch/evbarm/stand/Makefile:1.3 src/sys/arch/evbarm/stand/Makefile:1.4
--- src/sys/arch/evbarm/stand/Makefile:1.3	Tue Nov 20 19:17:03 2012
+++ src/sys/arch/evbarm/stand/Makefile	Tue Nov 27 20:00:39 2012
@@ -1,7 +1,11 @@
-#	$NetBSD: Makefile,v 1.3 2012/11/20 19:17:03 jkunz Exp $
+#	$NetBSD: Makefile,v 1.4 2012/11/27 20:00:39 jkunz Exp $
 
 SUBDIR+= gzboot
 SUBDIR+= boot2440
+.if ${MACHINE_ARCH} == "arm"
+# According to the i.MX23 Reference Manual section 3.1, Page 3-3:
+# "The i.MX23 always operates in litle-endian mode."
 SUBDIR+= bootimx23
+.endif
 
 .include 

Index: src/tools/Makefile
diff -u src/tools/Makefile:1.160 src/tools/Makefile:1.161
--- src/tools/Makefile:1.160	Mon Nov 26 16:57:25 2012
+++ src/tools/Makefile	Tue Nov 27 20:00:39 2012
@@ -1,4 +1,4 @@
-#	$NetBSD: Makefile,v 1.160 2012/11/26 16:57:25 pooka Exp $
+#	$NetBSD: Makefile,v 1.161 2012/11/27 20:00:39 jkunz Exp $
 
 .include 
 
@@ -154,7 +154,7 @@ SUBDIR+=	amiga-txlt
 SUBDIR+=	hp300-mkboot
 .endif
 
-.if ${MACHINE} == "evbarm"
+.if ${MACHINE} == "evbarm" && ${MACHINE_ARCH} == "arm"
 SUBDIR+=	elftosb
 .endif
 



CVS commit: src/sys/arch/evbarm/stand/bootimx23

2012-11-20 Thread Jochen Kunz
Module Name:src
Committed By:   jkunz
Date:   Tue Nov 20 23:39:33 UTC 2012

Modified Files:
src/sys/arch/evbarm/stand/bootimx23: power_prep.c

Log Message:
Give memory more time to power up. Avoids hangups.


To generate a diff of this commit:
cvs rdiff -u -r1.1 -r1.2 src/sys/arch/evbarm/stand/bootimx23/power_prep.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/arch/evbarm/stand/bootimx23/power_prep.c
diff -u src/sys/arch/evbarm/stand/bootimx23/power_prep.c:1.1 src/sys/arch/evbarm/stand/bootimx23/power_prep.c:1.2
--- src/sys/arch/evbarm/stand/bootimx23/power_prep.c:1.1	Tue Nov 20 19:08:46 2012
+++ src/sys/arch/evbarm/stand/bootimx23/power_prep.c	Tue Nov 20 23:39:33 2012
@@ -1,4 +1,4 @@
-/* $Id: power_prep.c,v 1.1 2012/11/20 19:08:46 jkunz Exp $ */
+/* $Id: power_prep.c,v 1.2 2012/11/20 23:39:33 jkunz Exp $ */
 
 /*
  * Copyright (c) 2012 The NetBSD Foundation, Inc.
@@ -574,6 +574,7 @@ enable_vddmem(void)
 	vddctrl &= ~(HW_POWER_VDDMEMCTRL_PULLDOWN_ACTIVE |
 	HW_POWER_VDDMEMCTRL_ENABLE_ILIMIT);
 	REG_WRITE(HW_POWER_BASE + HW_POWER_VDDMEMCTRL, vddctrl);
+	delay_us(1);
 
 	return;
 }



CVS commit: src/sys/arch/evbarm/stand/bootimx23

2012-11-20 Thread Jochen Kunz
Module Name:src
Committed By:   jkunz
Date:   Tue Nov 20 21:36:35 UTC 2012

Modified Files:
src/sys/arch/evbarm/stand/bootimx23: bootimx23.bd

Log Message:
Adjust bootloader file name.


To generate a diff of this commit:
cvs rdiff -u -r1.1 -r1.2 src/sys/arch/evbarm/stand/bootimx23/bootimx23.bd

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

Modified files:

Index: src/sys/arch/evbarm/stand/bootimx23/bootimx23.bd
diff -u src/sys/arch/evbarm/stand/bootimx23/bootimx23.bd:1.1 src/sys/arch/evbarm/stand/bootimx23/bootimx23.bd:1.2
--- src/sys/arch/evbarm/stand/bootimx23/bootimx23.bd:1.1	Tue Nov 20 19:08:46 2012
+++ src/sys/arch/evbarm/stand/bootimx23/bootimx23.bd	Tue Nov 20 21:36:35 2012
@@ -1,4 +1,4 @@
-/* $Id: bootimx23.bd,v 1.1 2012/11/20 19:08:46 jkunz Exp $ */
+/* $Id: bootimx23.bd,v 1.2 2012/11/20 21:36:35 jkunz Exp $ */
 
 /*
  * elftosb command file.
@@ -16,7 +16,7 @@ options {
 }
 
 sources {
-	boot_prep="./boot_prep.elf";
+	boot_prep="./bootimx23";
 	netbsd="./netbsd";
 }
 



CVS commit: src/sys/arch/evbarm/stand

2012-11-20 Thread Jochen Kunz
Module Name:src
Committed By:   jkunz
Date:   Tue Nov 20 19:17:03 UTC 2012

Modified Files:
src/sys/arch/evbarm/stand: Makefile

Log Message:
Add initial support for Olimex iMX233 based OLinuXino boards.
https://www.olimex.com/Products/OLinuXino/iMX233/
Contributed by Petri Laakso.


To generate a diff of this commit:
cvs rdiff -u -r1.2 -r1.3 src/sys/arch/evbarm/stand/Makefile

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

Modified files:

Index: src/sys/arch/evbarm/stand/Makefile
diff -u src/sys/arch/evbarm/stand/Makefile:1.2 src/sys/arch/evbarm/stand/Makefile:1.3
--- src/sys/arch/evbarm/stand/Makefile:1.2	Mon Jan 30 03:28:34 2012
+++ src/sys/arch/evbarm/stand/Makefile	Tue Nov 20 19:17:03 2012
@@ -1,6 +1,7 @@
-#	$NetBSD: Makefile,v 1.2 2012/01/30 03:28:34 nisimura Exp $
+#	$NetBSD: Makefile,v 1.3 2012/11/20 19:17:03 jkunz Exp $
 
 SUBDIR+= gzboot
 SUBDIR+= boot2440
+SUBDIR+= bootimx23
 
 .include 



CVS commit: src/distrib/sets/lists/base

2012-11-20 Thread Jochen Kunz
Module Name:src
Committed By:   jkunz
Date:   Tue Nov 20 19:09:47 UTC 2012

Modified Files:
src/distrib/sets/lists/base: md.evbarm

Log Message:
Add initial support for Olimex iMX233 based OLinuXino boards.
https://www.olimex.com/Products/OLinuXino/iMX233/
Contributed by Petri Laakso.


To generate a diff of this commit:
cvs rdiff -u -r1.11 -r1.12 src/distrib/sets/lists/base/md.evbarm

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

Modified files:

Index: src/distrib/sets/lists/base/md.evbarm
diff -u src/distrib/sets/lists/base/md.evbarm:1.11 src/distrib/sets/lists/base/md.evbarm:1.12
--- src/distrib/sets/lists/base/md.evbarm:1.11	Thu Nov 15 19:49:11 2012
+++ src/distrib/sets/lists/base/md.evbarm	Tue Nov 20 19:09:47 2012
@@ -1,4 +1,4 @@
-# $NetBSD: md.evbarm,v 1.11 2012/11/15 19:49:11 jkunz Exp $
+# $NetBSD: md.evbarm,v 1.12 2012/11/20 19:09:47 jkunz Exp $
 ./usr/mdec/gzboot_ADI_BRH_0x0014.bin	base-sysutil-bin
 ./usr/mdec/gzboot_GEMINI_0x0160.bin		base-sysutil-bin
 ./usr/mdec/gzboot_IQ80310_0x0008.bin	base-sysutil-bin
@@ -8,6 +8,7 @@
 ./usr/mdec/gzboot_SMDK2800_0x0010.bin	base-sysutil-bin
 ./usr/mdec/gzboot_TS7200_0x6066.bin		base-sysutil-bin
 ./usr/mdec/bootmini2440base-sysutil-bin
+./usr/mdec/bootimx23base-sysutil-bin
 ./usr/sbin/elftosbbase-sysutil-bin
 ./usr/sbin/sbtoolbase-sysutil-bin
 ./usr/sbin/sbkeygenbase-sysutil-bin



CVS commit: src

2012-11-15 Thread Jochen Kunz
Module Name:src
Committed By:   jkunz
Date:   Thu Nov 15 19:49:17 UTC 2012

Modified Files:
src/distrib/sets/lists/base: md.evbarm
src/distrib/sets/lists/man: mi
src/external/bsd: Makefile
src/share/mk: bsd.own.mk
src/tools: Makefile
Added Files:
src/external/bsd/elftosb: Makefile Makefile.inc
src/external/bsd/elftosb/dist: COPYING ReadMe.txt elftosb.ccscc
elftosb.sln elftosb.suo makefile makefile.rules stdafx.h
test_elftosb.bat test_elftosb.sh
src/external/bsd/elftosb/dist/bdfiles: basic_test_cmd.e complex.bd
habtest.bd simple.e test_cmd.e
src/external/bsd/elftosb/dist/common: AESKey.cpp AESKey.h Blob.cpp
Blob.h BootImage.h DataSource.cpp DataSource.h DataSourceImager.cpp
DataSourceImager.h DataTarget.cpp DataTarget.h ELF.h
ELFSourceFile.cpp ELFSourceFile.h EncoreBootImage.cpp
EncoreBootImage.h EndianUtilities.h EvalContext.cpp EvalContext.h
ExcludesListMatcher.cpp ExcludesListMatcher.h GHSSecInfo.cpp
GHSSecInfo.h GlobMatcher.cpp GlobMatcher.h HexValues.cpp
HexValues.h IVTDataSource.cpp IVTDataSource.h Logging.cpp Logging.h
Operation.cpp Operation.h OptionContext.h OptionDictionary.cpp
OptionDictionary.h OutputSection.cpp OutputSection.h Random.cpp
Random.h RijndaelCBCMAC.cpp RijndaelCBCMAC.h SHA1.cpp SHA1.h
SRecordSourceFile.cpp SRecordSourceFile.h SearchPath.cpp
SearchPath.h SourceFile.cpp SourceFile.h StELFFile.cpp StELFFile.h
StExecutableImage.cpp StExecutableImage.h StSRecordFile.cpp
StSRecordFile.h StringMatcher.h Value.cpp Value.h Version.cpp
Version.h crc.cpp crc.h format_string.cpp format_string.h
int_size.h options.cpp options.h rijndael.cpp rijndael.h
smart_ptr.h stdafx.cpp stdafx.h
src/external/bsd/elftosb/dist/elftosb.xcodeproj: creed.mode1
creed.mode1v3 creed.pbxuser project.pbxproj
src/external/bsd/elftosb/dist/elftosb2: BootImageGenerator.cpp
BootImageGenerator.h ConversionController.cpp
ConversionController.h Doxyfile ElftosbAST.cpp ElftosbAST.h
ElftosbErrors.h ElftosbLexer.cpp ElftosbLexer.h
EncoreBootImageGenerator.cpp EncoreBootImageGenerator.h FlexLexer.h
elftosb.cpp elftosb2.vcproj elftosb_lexer.cpp elftosb_lexer.l
elftosb_parser.tab.cpp elftosb_parser.tab.hpp elftosb_parser.y
src/external/bsd/elftosb/dist/encryptgpk: encryptgpk.cpp
encryptgpk.vcproj
src/external/bsd/elftosb/dist/keygen: Doxyfile keygen.cpp keygen.vcproj
src/external/bsd/elftosb/dist/sbtool: Doxyfile
EncoreBootImageReader.cpp EncoreBootImageReader.h sbtool.cpp
sbtool.vcproj
src/external/bsd/elftosb/dist/test_files: ProfileSeed.bin
ProfileSeedFile50k.bin hello_NOR_arm hello_NOR_arm.map
hello_NOR_mixed hello_NOR_mixed.map hello_NOR_thumb
hello_NOR_thumb.map hostlink player_linfix.elf plugin_complex
plugin_hello redboot_gcc.srec rom_nand_ldr_profile sd_player_gcc
sd_player_gcc.srec test0.key
src/external/bsd/elftosb/dist/winsupport: unistd.h
src/external/bsd/elftosb/lib: Makefile
src/external/bsd/elftosb/usr.sbin: Makefile Makefile.inc
src/external/bsd/elftosb/usr.sbin/elftosb: Makefile elftosb.8
src/external/bsd/elftosb/usr.sbin/sbkeygen: Makefile sbkeygen.8
src/external/bsd/elftosb/usr.sbin/sbtool: Makefile sbtool.8
src/tools/elftosb: Makefile

Log Message:
Add elftosb tools to evbarm userland and toolchain.
Elftosb is used to create a digitaly signed "secure boot" file.
This sb file can be booted by the first stage boot loader found in
Freescale i.MX23 and i.MX28 application processors.

Copyright (c) 2004-2010 Freescale Semiconductor, Inc.


To generate a diff of this commit:
cvs rdiff -u -r1.10 -r1.11 src/distrib/sets/lists/base/md.evbarm
cvs rdiff -u -r1.1406 -r1.1407 src/distrib/sets/lists/man/mi
cvs rdiff -u -r1.33 -r1.34 src/external/bsd/Makefile
cvs rdiff -u -r0 -r1.1 src/external/bsd/elftosb/Makefile \
src/external/bsd/elftosb/Makefile.inc
cvs rdiff -u -r0 -r1.1 src/external/bsd/elftosb/dist/COPYING \
src/external/bsd/elftosb/dist/ReadMe.txt \
src/external/bsd/elftosb/dist/elftosb.ccscc \
src/external/bsd/elftosb/dist/elftosb.sln \
src/external/bsd/elftosb/dist/elftosb.suo \
src/external/bsd/elftosb/dist/makefile \
src/external/bsd/elftosb/dist/makefile.rules \
src/external/bsd/elftosb/dist/stdafx.h \
src/external/bsd/elftosb/dist/test_elftosb.bat \
src/external/bsd/elftosb/dist/test_elftosb.sh
cvs rdiff -u -r0 -r1.1 src/external/bsd/elftosb/dist/bdfiles/basic_test_cmd.e \
src/external/bsd/elftosb/dist/bdfiles/complex.bd \
src/external/bsd/elftosb/dist/bdfiles/habte

CVS commit: src/usr.sbin/inetd

2009-10-22 Thread Jochen Kunz
Module Name:src
Committed By:   jkunz
Date:   Thu Oct 22 16:34:27 UTC 2009

Modified Files:
src/usr.sbin/inetd: Makefile inetd.8 inetd.c

Log Message:
Add mDNS Service Directory support to inetd(8).
inetd(8) can now advertize services in the mDNS-SD.
(Per service configuration option in inetd.conf(5).)


To generate a diff of this commit:
cvs rdiff -u -r1.21 -r1.22 src/usr.sbin/inetd/Makefile
cvs rdiff -u -r1.52 -r1.53 src/usr.sbin/inetd/inetd.8
cvs rdiff -u -r1.113 -r1.114 src/usr.sbin/inetd/inetd.c

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

Modified files:

Index: src/usr.sbin/inetd/Makefile
diff -u src/usr.sbin/inetd/Makefile:1.21 src/usr.sbin/inetd/Makefile:1.22
--- src/usr.sbin/inetd/Makefile:1.21	Mon May 28 12:06:35 2007
+++ src/usr.sbin/inetd/Makefile	Thu Oct 22 16:34:27 2009
@@ -1,5 +1,5 @@
 #	from: @(#)Makefile	8.1 (Berkeley) 6/6/93
-#	$NetBSD: Makefile,v 1.21 2007/05/28 12:06:35 tls Exp $
+#	$NetBSD: Makefile,v 1.22 2009/10/22 16:34:27 jkunz Exp $
 
 .include 
 
@@ -20,6 +20,12 @@
 CPPFLAGS+=-DINET6
 .endif
 
+.if (${MKMDNS} != "no")
+CPPFLAGS+=-DMDNS
+LDADD+= -ldns_sd
+DPADD+=	${LIBDNS_SD}
+.endif
+
 CPPFLAGS+=-DIPSEC
 SRCS+=	ipsec.c
 LDADD+= -lipsec

Index: src/usr.sbin/inetd/inetd.8
diff -u src/usr.sbin/inetd/inetd.8:1.52 src/usr.sbin/inetd/inetd.8:1.53
--- src/usr.sbin/inetd/inetd.8:1.52	Tue Jul 14 08:24:15 2009
+++ src/usr.sbin/inetd/inetd.8	Thu Oct 22 16:34:27 2009
@@ -1,4 +1,4 @@
-.\"	$NetBSD: inetd.8,v 1.52 2009/07/14 08:24:15 wiz Exp $
+.\"	$NetBSD: inetd.8,v 1.53 2009/10/22 16:34:27 jkunz Exp $
 .\"
 .\" Copyright (c) 1998 The NetBSD Foundation, Inc.
 .\" All rights reserved.
@@ -118,7 +118,7 @@
 [addr:]service-name
 socket-type[:accept_filter]
 protocol[,sndbuf=size][,rcvbuf=size]
-wait/nowait[:max]
+[mdns,]wait/nowait[:max]
 user[:group]
 server-program
 server program arguments
@@ -132,7 +132,7 @@
 service-name/version
 socket-type
 rpc/protocol[,sndbuf=size][,rcvbuf=size]
-wait/nowait[:max]
+[mdns,]wait/nowait[:max]
 user[:group]
 server-program
 server program arguments
@@ -145,7 +145,7 @@
 path
 socket-type
 unix[,sndbuf=size][,rcvbuf=size]
-wait/nowait[:max]
+[mdns,]wait/nowait[:max]
 user[:group]
 server-program
 server program arguments
@@ -279,6 +279,16 @@
 Socket buffer sizes may be specified for all
 services and protocols except for tcpmux services.
 .Pp
+If the
+.Em mdns
+option is present then
+.Nm
+advertises the service in the mDNS Service Directory.
+.Xr mdnsd 8
+needs to run for this to work. Note that mDNS does not distinguish IPv4 and
+IPv6. If a service is enabled for IPv6 only and IPv4 addresses are configured
+on the affected interface, the service will be advertized for IPv4 and IPv6.
+.Pp
 The
 .Em wait/nowait
 entry is used to tell

Index: src/usr.sbin/inetd/inetd.c
diff -u src/usr.sbin/inetd/inetd.c:1.113 src/usr.sbin/inetd/inetd.c:1.114
--- src/usr.sbin/inetd/inetd.c:1.113	Mon Jul 13 19:05:41 2009
+++ src/usr.sbin/inetd/inetd.c	Thu Oct 22 16:34:27 2009
@@ -1,4 +1,4 @@
-/*	$NetBSD: inetd.c,v 1.113 2009/07/13 19:05:41 roy Exp $	*/
+/*	$NetBSD: inetd.c,v 1.114 2009/10/22 16:34:27 jkunz Exp $	*/
 
 /*-
  * Copyright (c) 1998, 2003 The NetBSD Foundation, Inc.
@@ -66,7 +66,7 @@
 #if 0
 static char sccsid[] = "@(#)inetd.c	8.4 (Berkeley) 4/13/94";
 #else
-__RCSID("$NetBSD: inetd.c,v 1.113 2009/07/13 19:05:41 roy Exp $");
+__RCSID("$NetBSD: inetd.c,v 1.114 2009/10/22 16:34:27 jkunz Exp $");
 #endif
 #endif /* not lint */
 
@@ -98,7 +98,8 @@
  *	socket type[:accf[,arg]]	stream/dgram/raw/rdm/seqpacket,
 	only stream can name an accept filter
  *	protocol			must be in /etc/protocols
- *	wait/nowait[:max]		single-threaded/multi-threaded, max #
+ *	[mdns,]wait/nowait[:max]	single-threaded/multi-threaded, max #
+ *	if "mdns" register service in mDNS-SD
  *	user[:group]			user/group to run daemon as
  *	server program			full path name
  *	server program arguments	maximum of MAXARGS (20)
@@ -107,7 +108,8 @@
  *  service name/versionmust be in /etc/rpc
  *	socket type			stream/dgram/raw/rdm/seqpacket
  *	protocol			must be in /etc/protocols
- *	wait/nowait[:max]		single-threaded/multi-threaded
+ *	[mdns,]wait/nowait[:max]	single-threaded/multi-threaded
+ *	if "mdns" register service in mDNS-SD
  *	user[:group]			user to run daemon as
  *	server program			full path name
  *	server program arguments	maximum of MAXARGS (20)
@@ -255,6 +257,10 @@
 int deny_severity = LIBWRAP_DENY_FACILITY|LIBWRAP_DENY_SEVERITY;
 #endif
 
+#ifdef MDNS
+#include 
+#endif /* MDNS */
+
 #define	TOOMANY		40		/* don't start more than TOOMANY */
 #define	CNT_INTVL	60		/* servers in CNT_INTVL sec. */
 #define	RETRYTIME	(60*10)		/* retry after bind or server fail */
@@ -320,6 +326,7 @@
 	} se_un;			/* bound address */
 #define se_ctrladdr	se_un.se_un_ctrladdr
 #define se_ctrladdr_in	se_un.se_un_ctrladdr_in
+#define se_ctrladdr_in6	se_un.se_un_ctrladdr_in6
 #define se_ctrladdr_un	se_un.se_un