rhirokawa,
Thanks for the update.
For reference, an extlinux configuration could also have caused this issue: https://wiki.st.com/stm32mpu/wiki/How_to_compile_the_device_tree_with_the_Developer_Package#Updating_extlinux
Please let us know if you have further questions during board bring-up.
Best,
Neeraj
Allankliu,
It looks like U-Boot is reading the uEnv.txt file located in /boot folder and then something goes wrong. When using the [BLNK] EEPROM ID, Beagleboard images default to Beaglebone Black configuration. First, check if your board configuration is same as Beaglebone Black in regards to the pins used to the MMC interface to boot. Please note that you may have to recompile U-Boot and kernel device trees if you are not using the same pins for the boot media.
You can also stop the boot at U-Boot when it prompts you this message “Press SPACE to abort autoboot in 2 seconds”. You can then use mmc commands in U-Boot to check for presence or absence of MMC interfaces. Some of the commands available in U-Boot shell are shown here: https://sites.google.com/site/manisbutareed/bringing-my-beagles-to-heel/u-boot-commands.
More useful resources:
https://octavosystems.com/app_notes/osd335x-eeprom-during-boot/
Custom board Linux build: https://www.digikey.com/eewiki/display/linuxonarm/OSD3358-SM-RED
Best,
Neeraj
Bill,
Also note Mkaefile.sdk: https://github.com/octavosystems/BRK_Developer_Package_patches/blob/master/arm-trusted-firmware-v2.2-stm32mp/Makefile.sdk. You can add device tree name to TFA_DEVICETREE variable.
Best,
Neeraj
Nenad,
32KHZ oscillator is not integrated inside the SiP. Please take a look at Table 5-6 in OSD32MP1 datasheet: https://octavosystems.com/docs/osd32mp15x-datasheet/. We will update the pin mapping table to be less confusing. You will need an external 32KHZ oscillator on LSE.
Best,
Neeraj
Ivan,
Looks like the codec can be used with either I2C or SPI control interface. Have you instantiated the proper control interface in the device tree? See https://github.com/torvalds/linux/blob/master/Documentation/devicetree/bindings/sound/pcm179x.txt and https://github.com/torvalds/linux/blob/master/Documentation/devicetree/bindings/sound/pcm1789.txt.
Best,
Neeraj
Connor,
The M4 does not have access to the DDR peripheral, the A7 always controls it. The A7 either at U-boot or after Linux kernel boot can start the M4 co-processor with appropriate firmware. This can be stored in the same non-volatile memory that is used for Linux root filesystem. Please take a look at the memory available for the M4 in section 3.4.2 of the datasheet here: https://www.st.com/resource/en/datasheet/stm32mp157c.pdf and https://wiki.st.com/stm32mpu/wiki/MCU_SRAM_internal_memory.
Other resources you might find useful here:
https://wiki.st.com/stm32mpu/wiki/IPCC_internal_peripheral
https://wiki.st.com/stm32mpu/wiki/Category:Coprocessor_management_Linux
eldam,
You should be able to use the DK2 files from ST. OSD32MP1 is compatible with discrete solution.
Best,
Neeraj
As aduff said, the LEDs are integrated into the device tree with the new OpenSTLinux V2 image. We have modified the demo in the OpenSTLinux image to now work as described in the Getting Started Guide. Note that the demo code in in folder /usrl/local/demo/LEDWebDemo
Best,
Neeraj
Lori,
The pocketBeagle bootcmd supports generic functions loading the kernel and device tree. You can halt the boot process during U-Boot countdown and explore the bootcmd by using printenv.
Best,
Neeraj
Tanvir,
You should be able to replace AR8035-AL1A with LAN8710. LAN8710 is used in Beaglebone Black. See https://github.com/beagleboard/beaglebone-black/blob/master/BBB_SCH.pdf for reference. Pin mapping between the AM335x used in Beaglebone Black and OSD335x family is shown here: https://octavosystems.com/app_notes/osd335x-family-pin-assignments/. Device tree for Beaglebone Black Ethernet can be accessed here: https://github.com/RobertCNelson/dtb-rebuilder/blob/4.14-ti/src/arm/am335x-bone-common.dtsi#L421.
Best,
Neeraj
BR,
Support for Cube Programmer support for BRK is in the works. Please see attached patch(https://github.com/neerajdantu/BRK_Uboot_patch) that implements this function. Please update your Developer Package to the latest version(v2.0) as well as Cube Programmer(2.5) for this to work.
Best,
Neeraj
Tobias,
RAM access can be controlled via TZC (Trust Zone Controller). Please take a look at the wiki page here: https://wiki.st.com/stm32mpu/wiki/TZC_internal_peripheral. Also see Section 6 of the reference manual for configuration: https://www.st.com/resource/en/reference_manual/DM00327659-.pdf.
Best,
Neeraj
Aedan,
BUCK3 can be set at TF-A or the PMIC can be reprogrammed to set BUCK3 to 1.8V at power up(see https://octavosystems.com/app_notes/stpmic1-non-volatile-memory-programming-guide/).
The connection for VDDA1V8_RED is per recommendation of STM32MP1 datasheet(see section 3.8.1 of datasheet: https://www.st.com/resource/en/datasheet/stm32mp157c.pdf) as well as section 10.1.5 of Hardware Getting Started Guide for STM32MP1 (https://www.st.com/resource/en/application_note/dm00389996-getting-started-with-stm32mp151-stm32mp153-and-stm32mp157-line-hardware-development-stmicroelectronics.pdf).
Best,
Neeraj
ELhawy,
There are multiple ways to run images from other development boards on the BRK. But, before doing that, there are important changes you need to make to the board configuration as the hardware is not the same on the DK2 and the BRK.
Notably, the BRK does not have the USB-C configuration of the DK-2. The error you are experiencing is because on the DK2, U-Boot(second stage bootloader) performs checks for the USB-C configuration and stops because it cannot verify the configuration.
Ideally, you would need to change the device trees for TF-A, U-Boot and the Kernel to modify the image to boot from the BRK. Because the BRK has the same SD-card configuration as the DK2 (minus the card detect pin), it is possible to run DK2 images with minor modifications. Mainly, you will need to change the following configurations:
Get rid of the ADC configuration here: https://github.com/STMicroelectronics/u-boot/blob/v2020.01-stm32mp/arch/arm/dts/stm32mp15xx-dkx.dtsi#L100
Get rid of fastboot and adc configuration here: https://github.com/STMicroelectronics/u-boot/blob/v2020.01-stm32mp/arch/arm/dts/stm32mp157a-dk1-u-boot.dtsi#L21.
Altering or recompiling can be done by use of Developer Package: https://wiki.st.com/stm32mpu/wiki/STM32MP1_Developer_Package.
Please make sure you are working on the appropriate kernel version as ST has recently updated the BSP. The current BRK device tree image and device tree is for 4.19 Kernel, while work on support for Kernel 5.4 is on the way.
Best,
Neeraj
Aeden,
Based on the documentation, in addition to the VDD setting, REG1V8 configuration should be changed.
BYPASS_REG1V8(M10) needs to be connected to VDD.
VDDA1V8_REG (R7) needs to be connected to VDD instead of being a test point.
Note that we have not tested this configuration. But, according to the documentation, this is all the changes you need to make for 1.8V operation. We will report back once we verify.
Best,
Neeraj
Octavo Systems LLC all rights reserved
OCTAVO is registered in the U.S. Patent and Trademark Office. OSD, C-SiP, and the Octavo Logo are trademarks of Octavo Systems LLC.
"*" indicates required fields
"*" indicates required fields
"*" indicates required fields
"*" indicates required fields