Code-audit » History » Revision 40
Revision 39 (Anonymous, 02/19/2016 10:49 PM) → Revision 40/57 (Anonymous, 02/19/2016 10:49 PM)
== Introduction == This page is a code audit that: * Verify if the license are correct(not copied from osmocom-bb and changed from GPL to BSD) * permit to view the license of each file, that's important for the inclusion into the official nuttx that only accepts BSD code for the non-applications part. == Audit == Currently the following files were added or modified by nuttx-bb(on top of nuttx): {{{ apps/examples/calypsotest/Makefile apps/examples/calypsotest/bounce_analyze.c apps/examples/calypsotest/main.c apps/examples/ostest/main.c nuttx/arch/arm/include/calypso/armio.h OK,BSD only definitions of functions nuttx/arch/arm/include/calypso/clock.h no license, copied from omsocombb's src/target/firmware/include/clock.h(which has no license too) nuttx/arch/arm/include/calypso/debug.h no license, copied from omsocombb's src/target/firmware/include/debug.h(which has no license too), debug macros nuttx/arch/arm/include/calypso/defines.h no license, copied from osmocombb's src/target/firmware/include/defines.h(which has no license too), trivial defines like #define __unused attribute__((unused)) nuttx/arch/arm/include/calypso/irq.h GPL, copyright Harald Welte and Stefan Richter nuttx/arch/arm/include/calypso/memory.h no license,copied from osmocombb's src/target/firmware/include/memory.h(which has no license too), trivial defines like #define readb(a) __arch_getb(a) nuttx/arch/arm/include/calypso/timer.h no license, copied from osmocombb's src/target/firmware/include/timer.h(which has no license too), only definitions of functions nuttx/arch/arm/src/Makefile OK,BSD nuttx/arch/arm/src/calypso/Make.defs OK,BSD nuttx/arch/arm/src/calypso/calypso_armio.c BSD,copyright Stefan Richter, seem ok(grep found nothing in osmocom-bb) nuttx/arch/arm/src/calypso/calypso_head.S no license, specific to nuttx( it jumps to functions like up_ which are nuttx functions) nuttx/arch/arm/src/calypso/calypso_heap.c problematic?, see below nuttx/arch/arm/src/calypso/calypso_irq.c OK,GPL, copied from osmocombb's src/target/firmware/calypso/irq.c , copyright Harald Welte and Stefan Richter nuttx/arch/arm/src/calypso/calypso_keypad.c OK,BSD, totally different from osmocom-bb's src/target/firmware/calypso/keypad.c nuttx/arch/arm/src/calypso/calypso_lowputc.S OK,BSD, not found in osmocom-bb source nuttx/arch/arm/src/calypso/calypso_serial.c OK,BSD, based on nuttx/arch/arm/src/c5471/c5471_serial.c from nuttx (verified with diff) nuttx/arch/arm/src/calypso/calypso_spi.c OK,BSD, wrapper arround osmocombb's SPI, incomplete nuttx/arch/arm/src/calypso/calypso_timer.c OK,GPL, copyright Harald Welte and Stefan Richter nuttx/arch/arm/src/calypso/chip.h OK,BSD,based on nuttx/arch/arm/src/c5471/chip.h nuttx/arch/arm/src/calypso/clock.c OK,GPL, copyright Harald Welte nuttx/arch/arm/src/common/up_internal.h OK,BSD,trivial modification(part of nuttx) nuttx/configs/compal_e88/calypsotest/Make.defs OK,BSD nuttx/configs/compal_e88/calypsotest/appconfig OK,BSD nuttx/configs/compal_e88/calypsotest/defconfig OK,BSD nuttx/configs/compal_e88/calypsotest/setenv.sh OK,BSD nuttx/configs/compal_e88/include/board.h OK,BSD nuttx/configs/compal_e88/ld.script OK,BSD nuttx/configs/compal_e88/nsh/Make.defs OK,BSD nuttx/configs/compal_e88/nsh/appconfig OK,BSD nuttx/configs/compal_e88/nsh/defconfig OK,BSD nuttx/configs/compal_e88/nsh/ld.script OK,BSD nuttx/configs/compal_e88/nsh/setenv.sh OK,BSD nuttx/configs/compal_e88/ostest/Make.defs OK,BSD nuttx/configs/compal_e88/ostest/appconfig OK,BSD nuttx/configs/compal_e88/ostest/defconfig OK,BSD nuttx/configs/compal_e88/ostest/setenv.sh OK,BSD nuttx/configs/compal_e88/src/Make.dep OK,BSD nuttx/configs/compal_e88/src/Makefile OK,BSD nuttx/configs/compal_e88/src/dummy.c OK,BSD nuttx/configs/compal_e99/calypsotest/Make.defs OK,BSD nuttx/configs/compal_e99/calypsotest/appconfig OK,BSD nuttx/configs/compal_e99/calypsotest/defconfig OK,BSD nuttx/configs/compal_e99/calypsotest/setenv.sh OK,BSD nuttx/configs/compal_e99/include/board.h OK,BSD nuttx/configs/compal_e99/ld.script OK,BSD nuttx/configs/compal_e99/nsh/Make.defs OK,BSD nuttx/configs/compal_e99/nsh/appconfig OK,BSD nuttx/configs/compal_e99/nsh/defconfig OK,BSD nuttx/configs/compal_e99/nsh/ld.script OK,BSD nuttx/configs/compal_e99/nsh/setenv.sh OK,BSD nuttx/configs/compal_e99/ostest/Make.defs OK,BSD nuttx/configs/compal_e99/ostest/appconfig OK,BSD nuttx/configs/compal_e99/ostest/defconfig OK,BSD nuttx/configs/compal_e99/ostest/setenv.sh OK,BSD nuttx/configs/compal_e99/src/Makefile OK,BSD nuttx/configs/compal_e99/src/dummy.c OK,BSD nuttx/drivers/Makefile OK,BSD nuttx/drivers/sercomm/Make.defs OK,BSD nuttx/drivers/sercomm/console.c mostly OK(see below), BSD nuttx/drivers/sercomm/loadwriter.py no copyright at all, small enough nuttx/drivers/sercomm/uart.c OK,GPL, copyright Harald Welte and Ingo Albrecht nuttx/drivers/sercomm/uart.h no license, copied from osmocom-bb's src/target/firmware/include/uart.h which had no license too nuttx/include/nuttx/spi.h OK,BSD, only small change made nuttx/include/sercomm/msgb.h OK,GPL,copyright Harald Welte nuttx/include/sercomm/sercomm.h copy of src/target/firmware/include/comm/sercomm.h, no license in both. nuttx/include/sercomm/sercomm_cons.h no license,copied from osmocom-bb's src/target/firmware/include/comm/sercomm_cons.h which had no license, interface only(only 2 definitions of functions inside) 70 files changed, 9221 insertions(+), 3 deletions(-) }}} We can safely assume that the config dir weren't took from osmocom-bb. == init.c and console.c == === nuttx-bb === * Copyright Stefan Richter * BSD License * nuttx/drivers/sercomm/console.c {{{ /* XXX: initialize MODEMUART to be used for sercomm*/ uart_init(SERCOMM_UART_NR, 1); uart_baudrate(SERCOMM_UART_NR, UART_115200); }}} === osmocom-bb === * GPL * Copyright Harald Welte and Steve Markgraf * src/target/firmware/board/compal_e99/init.c {{{ /* initialize MODEM UART to be used for sercomm*/ uart_init(SERCOMM_UART_NR, 1); uart_baudrate(SERCOMM_UART_NR, UART_115200); }}} == calypsotest/bounce_analyze.c == === nuttx-bb === * Copyright Stefan Richter * GPL License (could keep as GPL since it is an application) * apps/examples/calypsotest/bounce_analyze.c === osmocom-bb === * nothing found == calypsotest/main.c == === nuttx-bb === * Copyright Stefan Richter * BSD License * apps/examples/calypsotest/main.c {{{ static void lights_on(void) { uint16_t reg; reg = readw(ASIC_CONF_REG); /* LCD Set I/O(3) / SA0 to I/O(3) mode */ reg &= ~( (1 << 12) | (1 << 10) | (1 << 7) | (1 << 1)) ; /* don't set function pins to I2C Mode, C155 uses UWire */ /* TWL3025: Set SPI+RIF RX clock to rising edge */ reg |= (1 << 13) | (1 << 14); writew(reg, ASIC_CONF_REG); /* LCD Set I/O(3) to output mode and enable C155 backlight (IO1) */ /* FIXME: Put the display backlight control to backlight.c */ reg = readw(IO_CNTL_REG); reg &= ~( (1 << 3) | (1 << 1)); writew(reg, IO_CNTL_REG); /* LCD Set I/O(3) output low */ reg = readw(ARMIO_LATCH_OUT); reg &= ~(1 << 3); reg |= (1 << 1); writew(reg, ARMIO_LATCH_OUT); } }}} === osmocom-bb === * Copyright Harald Welte and Steve Markgraf * GPL License * src/target/firmware/board/compal_e99/init.c {{{ static void board_io_init(void) { uint16_t reg; reg = readw(ASIC_CONF_REG); /* LCD Set I/O(3) / SA0 to I/O(3) mode */ reg &= ~( (1 << 12) | (1 << 10) | (1 << 7) | (1 << 1)) ; /* don't set function pins to I2C Mode, C155 uses UWire */ /* TWL3025: Set SPI+RIF RX clock to rising edge */ reg |= (1 << 13) | (1 << 14); writew(reg, ASIC_CONF_REG); /* LCD Set I/O(3) to output mode and enable C155 backlight (IO1) */ /* FIXME: Put the display backlight control to backlight.c */ reg = readw(IO_CNTL_REG); reg &= ~( (1 << 3) | (1 << 1)); writew(reg, IO_CNTL_REG); /* LCD Set I/O(3) output low */ reg = readw(ARMIO_LATCH_OUT); reg &= ~(1 << 3); reg |= (1 << 1); writew(reg, ARMIO_LATCH_OUT); } }}} == ostest/main.c == === nuttx-bb === * Copyright Gregory Nutt * BSD License * apps/examples/ostest/main.c * Note: lights_on function used snippet code of OsmocomBB src/target/firmware/board/compal_e99/init.c === osmocom-bb === * nothing found == calypso/calypso_armio.c == === nuttx-bb === * Copyright Stefan Richter * BSD License * nuttx/arch/arm/src/calypso/calypso_armio.c === osmocom-bb === * nothing found == calypso/calypso_head.S == === nuttx-bb === * No copyright * No License * nuttx/arch/arm/src/calypso/calypso_head.S * Note: this is same file as nuttx/arch/arm/src/chip/calypso_head.S === osmocom-bb === * nothing found == calypso/calypso_irq.c == === nuttx-bb === * Copyright Harald Welte and Stefan Richter * BSD License * nuttx/arch/arm/src/calypso/calypso_irq.c === osmocom-bb === * Copyright Harald Welte * GPL License * src/target/firmware/calypso/irq.c == init.c and calypso_heap.c == === nuttx-bb === * Copyright Stefan Richter * BSD License * nuttx/arch/arm/src/calypso/calypso_heap.c {{{ void up_addregion(void) { #ifdef CONFIG_ARCH_BOARD_COMPALE99 /* Disable watchdog in first non-common function */ wdog_enable(0); #endif // XXX: change to initialization of extern memory with save defaults /* Configure memory interface */ calypso_mem_cfg(CALYPSO_nCS0, 3, CALYPSO_MEM_16bit, 1); calypso_mem_cfg(CALYPSO_nCS1, 3, CALYPSO_MEM_16bit, 1); calypso_mem_cfg(CALYPSO_nCS2, 5, CALYPSO_MEM_16bit, 1); calypso_mem_cfg(CALYPSO_nCS3, 5, CALYPSO_MEM_16bit, 1); calypso_mem_cfg(CALYPSO_CS4, 0, CALYPSO_MEM_8bit, 1); calypso_mem_cfg(CALYPSO_nCS6, 0, CALYPSO_MEM_32bit, 1); calypso_mem_cfg(CALYPSO_nCS7, 0, CALYPSO_MEM_32bit, 0); /* Set VTCXO_DIV2 = 1, configure PLL for 104 MHz and give ARM half of that */ calypso_clock_set(2, CALYPSO_PLL13_104_MHZ, ARM_MCLK_DIV_2); /* Configure the RHEA bridge with some sane default values */ calypso_rhea_cfg(0, 0, 0xff, 0, 1, 0, 0); } }}} === Osmocom-bb === * GPL * Copyright Harald Welte and Steve Markgraf * src/target/firmware/board/compal_e99/init.c {{{ void board_init(void) { /* Disable watchdog (compal loader leaves it enabled) */ wdog_enable(0); /* Configure memory interface */ calypso_mem_cfg(CALYPSO_nCS0, 3, CALYPSO_MEM_16bit, 1); calypso_mem_cfg(CALYPSO_nCS1, 3, CALYPSO_MEM_16bit, 1); calypso_mem_cfg(CALYPSO_nCS2, 5, CALYPSO_MEM_16bit, 1); calypso_mem_cfg(CALYPSO_nCS3, 5, CALYPSO_MEM_16bit, 1); calypso_mem_cfg(CALYPSO_CS4, 0, CALYPSO_MEM_8bit, 1); calypso_mem_cfg(CALYPSO_nCS6, 0, CALYPSO_MEM_32bit, 1); calypso_mem_cfg(CALYPSO_nCS7, 0, CALYPSO_MEM_32bit, 0); /* Set VTCXO_DIV2 = 1, configure PLL for 104 MHz and give ARM half of that */ calypso_clock_set(2, CALYPSO_PLL13_104_MHZ, ARM_MCLK_DIV_2); /* Configure the RHEA bridge with some sane default values */ calypso_rhea_cfg(0, 0, 0xff, 0, 1, 0, 0); }}}