From 248c7089b9787a6bf89205e58e618eaa4417eb42 Mon Sep 17 00:00:00 2001 From: Chris Johns Date: Fri, 14 Jun 2019 16:41:06 +1000 Subject: user: Split the ARM BSPs source into separate files. --- user/bsps/arm/altera-cyclone-v.rst | 83 ++++++++ user/bsps/arm/atsam.rst | 8 + user/bsps/arm/beagle.rst | 8 + user/bsps/arm/bsp-csb337.rst | 8 + user/bsps/arm/bsp-stm32f4.rst | 8 + user/bsps/arm/csb336.rst | 8 + user/bsps/arm/edb7312.rst | 8 + user/bsps/arm/gdbarmsim.rst | 8 + user/bsps/arm/gumstix.rst | 8 + user/bsps/arm/imx.rst | 149 ++++++++++++++ user/bsps/arm/lm3s69xx.rst | 8 + user/bsps/arm/lpc176x.rst | 8 + user/bsps/arm/lpc24xx.rst | 78 +++++++ user/bsps/arm/raspberrypi.rst | 8 + user/bsps/arm/realview-pbx-a9.rst | 8 + user/bsps/arm/rtl22xx.rst | 8 + user/bsps/arm/smdk2410.rst | 8 + user/bsps/arm/tms570.rst | 8 + user/bsps/arm/xilinx-zynq.rst | 8 + user/bsps/bsps-arm.rst | 402 ++----------------------------------- 20 files changed, 458 insertions(+), 382 deletions(-) create mode 100644 user/bsps/arm/altera-cyclone-v.rst create mode 100644 user/bsps/arm/atsam.rst create mode 100644 user/bsps/arm/beagle.rst create mode 100644 user/bsps/arm/bsp-csb337.rst create mode 100644 user/bsps/arm/bsp-stm32f4.rst create mode 100644 user/bsps/arm/csb336.rst create mode 100644 user/bsps/arm/edb7312.rst create mode 100644 user/bsps/arm/gdbarmsim.rst create mode 100644 user/bsps/arm/gumstix.rst create mode 100644 user/bsps/arm/imx.rst create mode 100644 user/bsps/arm/lm3s69xx.rst create mode 100644 user/bsps/arm/lpc176x.rst create mode 100644 user/bsps/arm/lpc24xx.rst create mode 100644 user/bsps/arm/raspberrypi.rst create mode 100644 user/bsps/arm/realview-pbx-a9.rst create mode 100644 user/bsps/arm/rtl22xx.rst create mode 100644 user/bsps/arm/smdk2410.rst create mode 100644 user/bsps/arm/tms570.rst create mode 100644 user/bsps/arm/xilinx-zynq.rst (limited to 'user') diff --git a/user/bsps/arm/altera-cyclone-v.rst b/user/bsps/arm/altera-cyclone-v.rst new file mode 100644 index 0000000..14c026c --- /dev/null +++ b/user/bsps/arm/altera-cyclone-v.rst @@ -0,0 +1,83 @@ +.. SPDX-License-Identifier: CC-BY-SA-4.0 + +.. Copyright (C) 2017, 2019 embedded brains GmbH +.. Copyright (C) 2017, 2019 Sebastian Huber + +altera-cyclone-v (Intel Cyclone V) +================================== + +This BSP offers only one variant, the `altcycv_devkit`. This variant supports +the Intel Cyclone V system on chip. The basic hardware initialization is not +performed by the BSP. A boot loader with device tree support must be used to +start the BSP, e.g. U-Boot. + +The BSP is known to run on these boards: + +* `Cyclone V SoC Development Kit `_ + +* `Enclustra Mars MA3 SoC Module `_ + +* `Terasic DE10-Standard Development Kit `_ + +Boot via U-Boot +--------------- + +The application executable file (ELF file) must be converted to an U-Boot +image. Use the following commands: + +.. code-block:: none + + arm-rtems5-objcopy -O binary app.exe app.bin + gzip -9 -f -c app.bin > app.bin.gz + mkimage -A arm -O linux -T kernel -a 0x00300000 -e 0x00300000 -n RTEMS -d app.bin.gz app.img + +Use the following U-Boot commands to boot an application via TFTP download: + +.. code-block:: none + + tftpboot ${loadaddr} app.img && run loadfdt && bootm ${loadaddr} - ${fdt_addr} ; reset + +The ``loadfdt`` command may be not defined in your U-Boot environment. Just +replace it with the appropriate commands to load the device tree at +``${fdt_addr}``. + +Clock Driver +------------ + +The clock driver uses the `Cortex-A9 MPCore Global Timer`. + +Console Driver +-------------- + +The console driver supports up to two on-chip NS16550 UARTs. The console +driver does not configure the pins. + +I2C Driver +---------- + +There is a legacy I2C driver. It should be converted to the I2C driver framework. + +Network Interface Driver +------------------------ + +The network interface driver is provided by the `libbsd`. It is initialized +according to the device tree. It supports checksum offload. + +MMC/SDCard Driver +----------------- + +The MMC/SDCard driver is provided by the `libbsd`. It is +initialized according to the device tree. Pin re-configuration according to +the serial clock frequency is not supported. DMA transfers are supported. + +USB Host Driver +--------------- + +The USB host driver is provided by the `libbsd`. It is initialized according +to the device tree. The driver works in polled mode. + +Caveats +------- + +The clock and pin configuration support is quite rudimentary and mostly relies +on the boot loader. diff --git a/user/bsps/arm/atsam.rst b/user/bsps/arm/atsam.rst new file mode 100644 index 0000000..db65026 --- /dev/null +++ b/user/bsps/arm/atsam.rst @@ -0,0 +1,8 @@ +.. SPDX-License-Identifier: CC-BY-SA-4.0 + +.. Copyright (C) 2019 TBD + +atsam +===== + +TODO. diff --git a/user/bsps/arm/beagle.rst b/user/bsps/arm/beagle.rst new file mode 100644 index 0000000..a36efde --- /dev/null +++ b/user/bsps/arm/beagle.rst @@ -0,0 +1,8 @@ +.. SPDX-License-Identifier: CC-BY-SA-4.0 + +.. Copyright (C) 2019 TBD + +beagle +====== + +TODO. diff --git a/user/bsps/arm/bsp-csb337.rst b/user/bsps/arm/bsp-csb337.rst new file mode 100644 index 0000000..6f7d927 --- /dev/null +++ b/user/bsps/arm/bsp-csb337.rst @@ -0,0 +1,8 @@ +.. SPDX-License-Identifier: CC-BY-SA-4.0 + +.. Copyright (C) 2019 TBD + +csb337 +====== + +TODO. diff --git a/user/bsps/arm/bsp-stm32f4.rst b/user/bsps/arm/bsp-stm32f4.rst new file mode 100644 index 0000000..23e764e --- /dev/null +++ b/user/bsps/arm/bsp-stm32f4.rst @@ -0,0 +1,8 @@ +.. SPDX-License-Identifier: CC-BY-SA-4.0 + +.. Copyright (C) 2019 TBD + +stm32f4 +======= + +TODO. diff --git a/user/bsps/arm/csb336.rst b/user/bsps/arm/csb336.rst new file mode 100644 index 0000000..7894f45 --- /dev/null +++ b/user/bsps/arm/csb336.rst @@ -0,0 +1,8 @@ +.. SPDX-License-Identifier: CC-BY-SA-4.0 + +.. Copyright (C) 2019 TBD + +csb336 +====== + +TODO. diff --git a/user/bsps/arm/edb7312.rst b/user/bsps/arm/edb7312.rst new file mode 100644 index 0000000..8d91a34 --- /dev/null +++ b/user/bsps/arm/edb7312.rst @@ -0,0 +1,8 @@ +.. SPDX-License-Identifier: CC-BY-SA-4.0 + +.. Copyright (C) 2019 TBD + +edb7312 +======= + +TODO. diff --git a/user/bsps/arm/gdbarmsim.rst b/user/bsps/arm/gdbarmsim.rst new file mode 100644 index 0000000..26ea90c --- /dev/null +++ b/user/bsps/arm/gdbarmsim.rst @@ -0,0 +1,8 @@ +.. SPDX-License-Identifier: CC-BY-SA-4.0 + +.. Copyright (C) 2019 TBD + +gdbarmsim +========= + +TODO. diff --git a/user/bsps/arm/gumstix.rst b/user/bsps/arm/gumstix.rst new file mode 100644 index 0000000..6ab98ae --- /dev/null +++ b/user/bsps/arm/gumstix.rst @@ -0,0 +1,8 @@ +.. SPDX-License-Identifier: CC-BY-SA-4.0 + +.. Copyright (C) 2019 TBD + +gumstix +======= + +TODO. diff --git a/user/bsps/arm/imx.rst b/user/bsps/arm/imx.rst new file mode 100644 index 0000000..bc93ae3 --- /dev/null +++ b/user/bsps/arm/imx.rst @@ -0,0 +1,149 @@ +.. SPDX-License-Identifier: CC-BY-SA-4.0 + +.. Copyright (C) 2017, 2019 embedded brains GmbH +.. Copyright (C) 2017, 2019 Sebastian Huber + +imx (NXP i.MX) +============== + +This BSP offers only one variant, the `imx7`. This variant supports the i.MX +7Dual processor. The basic hardware initialization is not performed by the +BSP. A boot loader with device tree support must be used to start the BSP, +e.g. U-Boot. + +Build Configuration Options +--------------------------- + +The following options are available at the configure command line. + +``BSP_PRESS_KEY_FOR_RESET`` + If defined to a non-zero value, then print a message and wait until pressed + before resetting board when application terminates. + +``BSP_RESET_BOARD_AT_EXIT`` + If defined to a non-zero value, then reset the board when the application + terminates. + +``BSP_PRINT_EXCEPTION_CONTEXT`` + If defined to a non-zero value, then print the exception context when an + unexpected exception occurs. + +``BSP_FDT_BLOB_SIZE_MAX`` + The maximum size of the device tree blob in bytes (default is 262144). + +``CONSOLE_USE_INTERRUPTS`` + Use interrupt driven mode for console devices (enabled by default). + +``IMX_CCM_IPG_HZ`` + The IPG clock frequency in Hz (default is 67500000). + +``IMX_CCM_UART_HZ`` + The UART clock frequency in Hz (default is 24000000). + +``IMX_CCM_AHB_HZ`` + The AHB clock frequency in Hz (default is 135000000). + +Boot via U-Boot +--------------- + +The application executable file (ELF file) must be converted to an U-Boot +image. Use the following commands: + +.. code-block:: none + + arm-rtems5-objcopy -O binary app.exe app.bin + gzip -9 -f -c app.bin > app.bin.gz + mkimage -A arm -O linux -T kernel -a 0x80200000 -e 0x80200000 -n RTEMS -d app.bin.gz app.img + +Use the following U-Boot commands to boot an application via TFTP download: + +.. code-block:: none + + tftpboot ${loadaddr} app.img && run loadfdt && bootm ${loadaddr} - ${fdt_addr} ; reset + +The ``loadfdt`` command may be not defined in your U-Boot environment. Just +replace it with the appropriate commands to load the device tree at +``${fdt_addr}``. + +Clock Driver +------------ + +The clock driver uses the `ARMv7-AR Generic Timer`. + +Console Driver +-------------- + +The console driver supports up to seven on-chip UARTs. They are initialized +according to the device tree. The console driver does not configure the pins. + +I2C Driver +---------- + +I2C drivers are registered by the ``i2c_bus_register_imx()`` function. The I2C +driver does not configure the pins. + +.. code-block:: c + + #include + #include + + void i2c_init(void) + { + int rv; + + rv = i2c_bus_register_imx("/dev/i2c-0", "i2c0"); + assert(rv == 0); + } + +SPI Driver +---------- + +SPI drivers are registered by the ``spi_bus_register_imx()`` function. The SPI +driver configures the pins according to the ``pinctrl-0`` device tree property. +SPI transfers with a continuous chip select are limited by the FIFO size of 64 +bytes. The driver has no DMA support. + +.. code-block:: c + + #include + #include + + void spi_init(void) + { + int rv; + + rv = spi_bus_register_imx("/dev/spi-0", "spi0"); + assert(rv == 0); + } + +Network Interface Driver +------------------------ + +The network interface driver is provided by the `libbsd`. It is initialized +according to the device tree. It supports checksum offload and interrupt +coalescing. IPv6 transmit checksum offload is not implemented. The interrupt +coalescing uses the MII/GMII clocks and can be controlled by the following +system controls: + + * ``dev.ffec..int_coal.rx_time`` + * ``dev.ffec..int_coal.rx_count`` + * ``dev.ffec..int_coal.tx_time`` + * ``dev.ffec..int_coal.tx_count`` + +A value of zero for the time or count disables the interrupt coalescing in the +corresponding direction. + +MMC/SDCard Driver +----------------- + +The MMC/SDCard driver (uSDHC module) is provided by the `libbsd`. It is +initialized according to the device tree. Pin re-configuration according to +the serial clock frequency is not supported. Data transfers are extremely +slow. This is probably due to the missing DMA support. + +Caveats +------- + +The clock and pin configuration support is quite rudimentary and mostly relies +on the boot loader. For a pin group configuration see +``imx_iomux_configure_pins()``. There is no power management support. diff --git a/user/bsps/arm/lm3s69xx.rst b/user/bsps/arm/lm3s69xx.rst new file mode 100644 index 0000000..15101ba --- /dev/null +++ b/user/bsps/arm/lm3s69xx.rst @@ -0,0 +1,8 @@ +.. SPDX-License-Identifier: CC-BY-SA-4.0 + +.. Copyright (C) 2019 TBD + +lm3s69xx +======== + +TODO. diff --git a/user/bsps/arm/lpc176x.rst b/user/bsps/arm/lpc176x.rst new file mode 100644 index 0000000..663fe4e --- /dev/null +++ b/user/bsps/arm/lpc176x.rst @@ -0,0 +1,8 @@ +.. SPDX-License-Identifier: CC-BY-SA-4.0 + +.. Copyright (C) 2019 TBD + +lpc176x +======= + +TODO. diff --git a/user/bsps/arm/lpc24xx.rst b/user/bsps/arm/lpc24xx.rst new file mode 100644 index 0000000..ecf1d84 --- /dev/null +++ b/user/bsps/arm/lpc24xx.rst @@ -0,0 +1,78 @@ +.. SPDX-License-Identifier: CC-BY-SA-4.0 + +.. Copyright (C) 2017, 2019 embedded brains GmbH +.. Copyright (C) 2017, 2019 Sebastian Huber + +lpc24xx (NXP LPC17XX/LPC24XX/LPC40XX) +===================================== + +This BSP offers only several variants. The following variants support the +`Embedded Artits LPC4088 Developer's Kit `_ +and earlier board generations: + +* lpc17xx_ea_ram + +* lpc17xx_ea_rom_int + +* lpc24xx_ea + +* lpc40xx_ea_ram + +* lpc40xx_ea_rom_int + +They can be used as a base line for customization. The basic hardware +initialization is performed by the BSP. It can be customized via configuration +options and configuration tables. See also +` `_. + +Clock Driver +------------ + +The clock driver of the Cortex-M variants uses the `ARMv7-M Systick`. The +older ARM7TDMI variants use the `TMR0` timer module. + +Console Driver +-------------- + +The console driver supports up to four on-chip UARTs. Initialization can be +customized via the ``lpc24xx_uart_probe_1()``, ``lpc24xx_uart_probe_2()`` and +``lpc24xx_uart_probe_3()`` functions. + +I2C Bus Driver +-------------- + +I2C bus drivers are registered by the ``lpc24xx_register_i2c_0()``, +``lpc24xx_register_i2c_1()`` and ``lpc24xx_register_i2c_2()`` functions. The +I2C driver does not configure the pins. See also +` `_. + +SPI Bus Driver +-------------- + +SPI bus drivers are registered by the ``lpc24xx_register_ssp_0()``, +``lpc24xx_register_ssp_1()`` and ``lpc24xx_register_ssp_2()`` functions. The +SSP driver does not configure the pins. See also +` `_. + +Network Interface Driver +------------------------ + +Only a legacy network driver is support. For a `libbsd` base driver the +platform support is missing, see +`if_lpe.c `_. + +USB Driver +---------- + +The USB host driver (OHCI) is provided by the `libbsd`. + +Framebuffer Driver +------------------ + +For a custom framebuffer driver see +` `_. + +RTC Driver +---------- + +There is a standard RTC driver available using the on-chip RTC module. diff --git a/user/bsps/arm/raspberrypi.rst b/user/bsps/arm/raspberrypi.rst new file mode 100644 index 0000000..4ef75bd --- /dev/null +++ b/user/bsps/arm/raspberrypi.rst @@ -0,0 +1,8 @@ +.. SPDX-License-Identifier: CC-BY-SA-4.0 + +.. Copyright (C) 2019 TBD + +raspberrypi +=========== + +TODO. diff --git a/user/bsps/arm/realview-pbx-a9.rst b/user/bsps/arm/realview-pbx-a9.rst new file mode 100644 index 0000000..96710a0 --- /dev/null +++ b/user/bsps/arm/realview-pbx-a9.rst @@ -0,0 +1,8 @@ +.. SPDX-License-Identifier: CC-BY-SA-4.0 + +.. Copyright (C) 2019 TBD + +realview-pbx-a9 +=============== + +TODO. diff --git a/user/bsps/arm/rtl22xx.rst b/user/bsps/arm/rtl22xx.rst new file mode 100644 index 0000000..74b3235 --- /dev/null +++ b/user/bsps/arm/rtl22xx.rst @@ -0,0 +1,8 @@ +.. SPDX-License-Identifier: CC-BY-SA-4.0 + +.. Copyright (C) 2019 TBD + +rtl22xx +======= + +TODO. diff --git a/user/bsps/arm/smdk2410.rst b/user/bsps/arm/smdk2410.rst new file mode 100644 index 0000000..ef3bbad --- /dev/null +++ b/user/bsps/arm/smdk2410.rst @@ -0,0 +1,8 @@ +.. SPDX-License-Identifier: CC-BY-SA-4.0 + +.. Copyright (C) 2019 TBD + +smdk2410 +======== + +TODO. diff --git a/user/bsps/arm/tms570.rst b/user/bsps/arm/tms570.rst new file mode 100644 index 0000000..593407a --- /dev/null +++ b/user/bsps/arm/tms570.rst @@ -0,0 +1,8 @@ +.. SPDX-License-Identifier: CC-BY-SA-4.0 + +.. Copyright (C) 2019 TBD + +tms570 +====== + +TODO. diff --git a/user/bsps/arm/xilinx-zynq.rst b/user/bsps/arm/xilinx-zynq.rst new file mode 100644 index 0000000..909b23e --- /dev/null +++ b/user/bsps/arm/xilinx-zynq.rst @@ -0,0 +1,8 @@ +.. SPDX-License-Identifier: CC-BY-SA-4.0 + +.. Copyright (C) 2019 TBD + +xilinx-zynq +=========== + +TODO. diff --git a/user/bsps/bsps-arm.rst b/user/bsps/bsps-arm.rst index eb972c6..1260529 100644 --- a/user/bsps/bsps-arm.rst +++ b/user/bsps/bsps-arm.rst @@ -6,385 +6,23 @@ arm (ARM) ********* -altera-cyclone-v (Intel Cyclone V) -================================== - -This BSP offers only one variant, the `altcycv_devkit`. This variant supports -the Intel Cyclone V system on chip. The basic hardware initialization is not -performed by the BSP. A boot loader with device tree support must be used to -start the BSP, e.g. U-Boot. - -The BSP is known to run on these boards: - -* `Cyclone V SoC Development Kit `_ - -* `Enclustra Mars MA3 SoC Module `_ - -* `Terasic DE10-Standard Development Kit `_ - -Boot via U-Boot ---------------- - -The application executable file (ELF file) must be converted to an U-Boot -image. Use the following commands: - -.. code-block:: none - - arm-rtems5-objcopy -O binary app.exe app.bin - gzip -9 -f -c app.bin > app.bin.gz - mkimage -A arm -O linux -T kernel -a 0x00300000 -e 0x00300000 -n RTEMS -d app.bin.gz app.img - -Use the following U-Boot commands to boot an application via TFTP download: - -.. code-block:: none - - tftpboot ${loadaddr} app.img && run loadfdt && bootm ${loadaddr} - ${fdt_addr} ; reset - -The ``loadfdt`` command may be not defined in your U-Boot environment. Just -replace it with the appropriate commands to load the device tree at -``${fdt_addr}``. - -Clock Driver ------------- - -The clock driver uses the `Cortex-A9 MPCore Global Timer`. - -Console Driver --------------- - -The console driver supports up to two on-chip NS16550 UARTs. The console -driver does not configure the pins. - -I2C Driver ----------- - -There is a legacy I2C driver. It should be converted to the I2C driver framework. - -Network Interface Driver ------------------------- - -The network interface driver is provided by the `libbsd`. It is initialized -according to the device tree. It supports checksum offload. - -MMC/SDCard Driver ------------------ - -The MMC/SDCard driver is provided by the `libbsd`. It is -initialized according to the device tree. Pin re-configuration according to -the serial clock frequency is not supported. DMA transfers are supported. - -USB Host Driver ---------------- - -The USB host driver is provided by the `libbsd`. It is initialized according -to the device tree. The driver works in polled mode. - -Caveats -------- - -The clock and pin configuration support is quite rudimentary and mostly relies -on the boot loader. - -atsam -===== - -TODO. - -beagle -====== - -TODO. - -csb336 -====== - -TODO. - -csb337 -====== - -TODO. - -edb7312 -======= - -TODO. - -gdbarmsim -========= - -TODO. - -gumstix -======= - -TODO. - -imx (NXP i.MX) -============== - -This BSP offers only one variant, the `imx7`. This variant supports the i.MX -7Dual processor. The basic hardware initialization is not performed by the -BSP. A boot loader with device tree support must be used to start the BSP, -e.g. U-Boot. - -Build Configuration Options ---------------------------- - -The following options are available at the configure command line. - -``BSP_PRESS_KEY_FOR_RESET`` - If defined to a non-zero value, then print a message and wait until pressed - before resetting board when application terminates. - -``BSP_RESET_BOARD_AT_EXIT`` - If defined to a non-zero value, then reset the board when the application - terminates. - -``BSP_PRINT_EXCEPTION_CONTEXT`` - If defined to a non-zero value, then print the exception context when an - unexpected exception occurs. - -``BSP_FDT_BLOB_SIZE_MAX`` - The maximum size of the device tree blob in bytes (default is 262144). - -``CONSOLE_USE_INTERRUPTS`` - Use interrupt driven mode for console devices (enabled by default). - -``IMX_CCM_IPG_HZ`` - The IPG clock frequency in Hz (default is 67500000). - -``IMX_CCM_UART_HZ`` - The UART clock frequency in Hz (default is 24000000). - -``IMX_CCM_AHB_HZ`` - The AHB clock frequency in Hz (default is 135000000). - -Boot via U-Boot ---------------- - -The application executable file (ELF file) must be converted to an U-Boot -image. Use the following commands: - -.. code-block:: none - - arm-rtems5-objcopy -O binary app.exe app.bin - gzip -9 -f -c app.bin > app.bin.gz - mkimage -A arm -O linux -T kernel -a 0x80200000 -e 0x80200000 -n RTEMS -d app.bin.gz app.img - -Use the following U-Boot commands to boot an application via TFTP download: - -.. code-block:: none - - tftpboot ${loadaddr} app.img && run loadfdt && bootm ${loadaddr} - ${fdt_addr} ; reset - -The ``loadfdt`` command may be not defined in your U-Boot environment. Just -replace it with the appropriate commands to load the device tree at -``${fdt_addr}``. - -Clock Driver ------------- - -The clock driver uses the `ARMv7-AR Generic Timer`. - -Console Driver --------------- - -The console driver supports up to seven on-chip UARTs. They are initialized -according to the device tree. The console driver does not configure the pins. - -I2C Driver ----------- - -I2C drivers are registered by the ``i2c_bus_register_imx()`` function. The I2C -driver does not configure the pins. - -.. code-block:: c - - #include - #include - - void i2c_init(void) - { - int rv; - - rv = i2c_bus_register_imx("/dev/i2c-0", "i2c0"); - assert(rv == 0); - } - -SPI Driver ----------- - -SPI drivers are registered by the ``spi_bus_register_imx()`` function. The SPI -driver configures the pins according to the ``pinctrl-0`` device tree property. -SPI transfers with a continuous chip select are limited by the FIFO size of 64 -bytes. The driver has no DMA support. - -.. code-block:: c - - #include - #include - - void spi_init(void) - { - int rv; - - rv = spi_bus_register_imx("/dev/spi-0", "spi0"); - assert(rv == 0); - } - -Network Interface Driver ------------------------- - -The network interface driver is provided by the `libbsd`. It is initialized -according to the device tree. It supports checksum offload and interrupt -coalescing. IPv6 transmit checksum offload is not implemented. The interrupt -coalescing uses the MII/GMII clocks and can be controlled by the following -system controls: - - * ``dev.ffec..int_coal.rx_time`` - * ``dev.ffec..int_coal.rx_count`` - * ``dev.ffec..int_coal.tx_time`` - * ``dev.ffec..int_coal.tx_count`` - -A value of zero for the time or count disables the interrupt coalescing in the -corresponding direction. - -MMC/SDCard Driver ------------------ - -The MMC/SDCard driver (uSDHC module) is provided by the `libbsd`. It is -initialized according to the device tree. Pin re-configuration according to -the serial clock frequency is not supported. Data transfers are extremely -slow. This is probably due to the missing DMA support. - -Caveats -------- - -The clock and pin configuration support is quite rudimentary and mostly relies -on the boot loader. For a pin group configuration see -``imx_iomux_configure_pins()``. There is no power management support. - -lm3s69xx -======== - -TODO. - -lpc176x -======= - -TODO. - -lpc24xx (NXP LPC17XX/LPC24XX/LPC40XX) -===================================== - -This BSP offers only several variants. The following variants support the -`Embedded Artits LPC4088 Developer's Kit `_ -and earlier board generations: - -* lpc17xx_ea_ram - -* lpc17xx_ea_rom_int - -* lpc24xx_ea - -* lpc40xx_ea_ram - -* lpc40xx_ea_rom_int - -They can be used as a base line for customization. The basic hardware -initialization is performed by the BSP. It can be customized via configuration -options and configuration tables. See also -` `_. - -Clock Driver ------------- - -The clock driver of the Cortex-M variants uses the `ARMv7-M Systick`. The -older ARM7TDMI variants use the `TMR0` timer module. - -Console Driver --------------- - -The console driver supports up to four on-chip UARTs. Initialization can be -customized via the ``lpc24xx_uart_probe_1()``, ``lpc24xx_uart_probe_2()`` and -``lpc24xx_uart_probe_3()`` functions. - -I2C Bus Driver --------------- - -I2C bus drivers are registered by the ``lpc24xx_register_i2c_0()``, -``lpc24xx_register_i2c_1()`` and ``lpc24xx_register_i2c_2()`` functions. The -I2C driver does not configure the pins. See also -` `_. - -SPI Bus Driver --------------- - -SPI bus drivers are registered by the ``lpc24xx_register_ssp_0()``, -``lpc24xx_register_ssp_1()`` and ``lpc24xx_register_ssp_2()`` functions. The -SSP driver does not configure the pins. See also -` `_. - -Network Interface Driver ------------------------- - -Only a legacy network driver is support. For a `libbsd` base driver the -platform support is missing, see -`if_lpe.c `_. - -USB Driver ----------- - -The USB host driver (OHCI) is provided by the `libbsd`. - -Framebuffer Driver ------------------- - -For a custom framebuffer driver see -` `_. - -RTC Driver ----------- - -There is a standard RTC driver available using the on-chip RTC module. - -lpc32xx -======= - -TODO. - -raspberrypi -=========== - -TODO. - -realview-pbx-a9 -=============== - -TODO. - -rtl22xx -======= - -TODO. - -smdk2410 -======== - -TODO. - -stm32f4 -======= - -TODO. - -tms570 -====== - -TODO. - -xilinx-zynq -=========== - -TODO. +.. include:: arm/altera-cyclone-v.rst +.. include:: arm/atsam.rst +.. include:: arm/beagle.rst +.. include:: arm/csb336.rst +.. include:: arm/csb337.rst +.. include:: arm/edb7312.rst +.. include:: arm/gdbarmsim.rst +.. include:: arm/gumstix.rst +.. include:: arm/imx.rst +.. include:: arm/lm3s69xx.rst +.. include:: arm/lpc176x.rst +.. include:: arm/imx.rst +.. include:: arm/lpc32xx.rst +.. include:: arm/raspberrypi.rst +.. include:: arm/realview-pbx-a9.rst +.. include:: arm/rtl22xx.rst +.. include:: arm/smdk2410.rst +.. include:: arm/stm32f4.rst +.. include:: arm/tms570.rst +.. include:: arm/xilinx-zynq.rst -- cgit v1.2.3