We can't run I2C off the 120 MHz main clock as the availiable dividers are too small.
Use the 48 MHz GCLK 6 instead which offers an appropriate frequency.
fixes#12037
Instead of hard-coding the peripheral clocks to CLOCK_CORECLOCK
introduce helper functions to return the frequency of the individual
GCLKs and use those for baud-rate calculations.
This requires the GCLK to be part of the peripheral's config struct.
While this is already the case for most peripherals, this also adds
it for those where it wasn't used before.
As it defaults to 0 (CLOCK_CORECLOCK) no change is to be expected.
To simplify board definitions and for unification between samd2x and
newer models, don't use the GCLK bitmask in board definitions.
Instead use the GCLK index and generate the bitmask when needed.
Only include its headers. Without this change board_init would be
defined twice. Once in `boards/waspmote-pro/board.c` and the other time
`boards/common/atmega/board.c`.
openocd configuration file for `stm32f7` relies on probing to find out
FLASH_ADDR. On nucleo-f767zi board probing (`flash probe 0`) fails when
`srst` is asserted, but `srst` needs to be asserted to be able to flash
the `BOARD` when sleeping or after a hardfault.
To circumvent this in boards/common/stm32/dist/stm32f7.cfg we define a new
flash bank with the appropriate fash start address and specify that this is
the flash bank to be used as default configuration instead of the
default by setting FLASH_BANK=4
The CC26x2 and CC13x2 share the same register definitions, and both are
treated equally in the TI's technical reference manual. [1]
- To avoid confusions in the future I renamed it to `cc26x2_cc13x2`.
- Documentation was updated.
- The `cc1312-launchpad` board that uses the `cc13x2` MCU was updated.
- The `cc1352-launchpad` board that uses the `cc13x2` MCU was updated.
[1]: https://www.ti.com/lit/ug/swcu185d/swcu185d.pdf
Signed-off-by: Jean Pierre Dudey <jeandudey@hotmail.com>
This is mostly based on the cc1352-launchpad boards, is essentially the same
buttons and leds pins, what changes is the CCXML files used to flash with
`make flash` and the UART pins.
Signed-off-by: Jean Pierre Dudey <jeandudey@hotmail.com>
For the ATmega platform the ADC lines are not defined according to the GPIOs. Instead, they are defined from 0 to ADC_NUMOF-1, which in turn represents the bit in the corresponding ADC registers. The mapping from the line number to the corresponding ADC register/bit combination is done implicitly by the periph/adc implementation.
With the new toolchain version required to fix issue #13133, the compilation of `examples/posix_socket` fails due to a C linkage error in `atomic_base.h`. The reason is that including `drivers/include/mtd.h` in `boards/esp32/board_common.h` inside the `extern C` block finally leads to including `atomic_base.h` inside the `extern C` block which in turn to the C linkage error for the template definitions in this file.
It causes errors on current Renode versions. It wasn't documented on the
Renode changelog, but SetClockSource property was removed. Before this
change it showed this error:
There was an error executing command 'machine SetClockSource cpu'
machine does not provide a field, method or property SetClockSource.
Signed-off-by: Jean Pierre Dudey <jeandudey@hotmail.com>
The MCB2388 Evaluation Board is a development board for the LPC2388 MCU.
LPC2388 and LPC2387 are very simmilar, the only difference is added USB Host
support.
Since this is not used yet, I chose to just pretend it's an lpc2387.
So far, only the two UARTs, LEDs and LCD display are configured.