Compare commits
25 Commits
728f5dfe39
...
e3901ee0d5
Author | SHA1 | Date |
---|---|---|
BohdanBuinich | e3901ee0d5 | |
Bohdan Buinich | c67d7f0b7f | |
Bohdan Buinich | 0e46446619 | |
Bohdan Buinich | f863b1b20b | |
Bohdan Buinich | 78799248bf | |
j1nx | 00d48ae291 | |
j1nx | aa79231bf0 | |
j1nx | 24a7b5beb1 | |
j1nx | c265d718e5 | |
j1nx | 23a94cc1db | |
j1nx | 59d3088fb8 | |
j1nx | 503e727dbb | |
j1nx | 783900f225 | |
j1nx | 3bdd57fb1d | |
j1nx | 9e0642fb2d | |
j1nx | bad6591e40 | |
j1nx | 2a361ae00c | |
j1nx | eabf79c3f2 | |
j1nx | 9dab4692a4 | |
j1nx | f628a9f49c | |
j1nx | b1fb2843e0 | |
j1nx | 75479afcfd | |
j1nx | 1c0833808d | |
j1nx | 91fcb4e1d6 | |
Bohdan Buinich | c0442cc0e6 |
|
@ -1,4 +1,4 @@
|
|||
[submodule "buildroot"]
|
||||
path = buildroot
|
||||
url = https://github.com/j1nx/buildroot.git
|
||||
branch = ovos-2023.02.x
|
||||
url = https://github.com/OpenVoiceOS/buildroot.git
|
||||
branch = ovos-2024.02.x
|
||||
|
|
4
Makefile
4
Makefile
|
@ -25,8 +25,8 @@ $(TARGETS): %: $(RELEASE_DIR) %-config
|
|||
$(MAKE) -C $(BUILDROOT) BR2_EXTERNAL=../$(BUILDROOT_EXTERNAL) 2>&1 | tee logs/buildroot_$@_output.txt
|
||||
rsync -ah --progress $(BUILDROOT)/output/images/disk.img $(RELEASE_DIR)/OpenVoiceOS_$@_$(BUILDDATE).img
|
||||
rsync -ah --progress $(BUILDROOT)/output/images/rootfs.swu $(RELEASE_DIR)/OpenVoiceOS_$@_$(BUILDDATE).swu
|
||||
xz -3 -T0 -v -f -k $(RELEASE_DIR)/OpenVoiceOS_$@_$(BUILDDATE).img
|
||||
xz -3 -T0 -v -f -k $(RELEASE_DIR)/OpenVoiceOS_$@_$(BUILDDATE).swu
|
||||
xz -3 -T0 -v -f $(RELEASE_DIR)/OpenVoiceOS_$@_$(BUILDDATE).img
|
||||
xz -3 -T0 -v -f $(RELEASE_DIR)/OpenVoiceOS_$@_$(BUILDDATE).swu
|
||||
@if [ $@ = "ova_64" ]; then\
|
||||
qemu-img convert -O vdi $(RELEASE_DIR)/OpenVoiceOS_$@_$(BUILDDATE).img $(RELEASE_DIR)/OpenVoiceOS_$@_$(BUILDDATE).vdi;\
|
||||
xz -3 -T0 -v -f -k $(RELEASE_DIR)/OpenVoiceOS_$@_$(BUILDDATE).vdi;\
|
||||
|
|
|
@ -1 +1 @@
|
|||
Subproject commit e2b977c858a29c91a33324283e649a8aeab4a2dc
|
||||
Subproject commit 2ce3fc804afcfb988635d5c95164c575423b82b9
|
|
@ -93,7 +93,7 @@ menu "KDE Framework and Plasma"
|
|||
source "$BR2_EXTERNAL_OPENVOICEOS_PATH/package/kf5-threadweaver/Config.in"
|
||||
endmenu
|
||||
source "$BR2_EXTERNAL_OPENVOICEOS_PATH/package/ksm-preload/Config.in"
|
||||
source "$BR2_EXTERNAL_OPENVOICEOS_PATH/package/libcanberra/Config.in"
|
||||
source "$BR2_EXTERNAL_OPENVOICEOS_PATH/package/libgpiod2/Config.in"
|
||||
source "$BR2_EXTERNAL_OPENVOICEOS_PATH/package/libre/Config.in"
|
||||
source "$BR2_EXTERNAL_OPENVOICEOS_PATH/package/librem/Config.in"
|
||||
source "$BR2_EXTERNAL_OPENVOICEOS_PATH/package/lottie-qml/Config.in"
|
||||
|
@ -136,6 +136,7 @@ endmenu
|
|||
menu "Additional external python modules"
|
||||
source "$BR2_EXTERNAL_OPENVOICEOS_PATH/package/python-adafruit-blinka/Config.in"
|
||||
source "$BR2_EXTERNAL_OPENVOICEOS_PATH/package/python-adafruit-circuitpython-neopixel/Config.in"
|
||||
source "$BR2_EXTERNAL_OPENVOICEOS_PATH/package/python-adafruit-circuitpython-typing/Config.in"
|
||||
source "$BR2_EXTERNAL_OPENVOICEOS_PATH/package/python-adafruit-platformdetect/Config.in"
|
||||
source "$BR2_EXTERNAL_OPENVOICEOS_PATH/package/python-adafruit-pureio/Config.in"
|
||||
source "$BR2_EXTERNAL_OPENVOICEOS_PATH/package/python-adapt-parser/Config.in"
|
||||
|
@ -143,10 +144,8 @@ menu "Additional external python modules"
|
|||
source "$BR2_EXTERNAL_OPENVOICEOS_PATH/package/python-audio-metadata/Config.in"
|
||||
source "$BR2_EXTERNAL_OPENVOICEOS_PATH/package/python-autocommand/Config.in"
|
||||
source "$BR2_EXTERNAL_OPENVOICEOS_PATH/package/python-bitstruct/Config.in"
|
||||
source "$BR2_EXTERNAL_OPENVOICEOS_PATH/package/python-blinker/Config.in"
|
||||
source "$BR2_EXTERNAL_OPENVOICEOS_PATH/package/python-board/Config.in"
|
||||
source "$BR2_EXTERNAL_OPENVOICEOS_PATH/package/python-bs4/Config.in"
|
||||
source "$BR2_EXTERNAL_OPENVOICEOS_PATH/package/python-cachetools/Config.in"
|
||||
source "$BR2_EXTERNAL_OPENVOICEOS_PATH/package/python-casttube/Config.in"
|
||||
source "$BR2_EXTERNAL_OPENVOICEOS_PATH/package/python-click-default-group/Config.in"
|
||||
source "$BR2_EXTERNAL_OPENVOICEOS_PATH/package/python-colour/Config.in"
|
||||
|
@ -171,15 +170,14 @@ menu "Additional external python modules"
|
|||
source "$BR2_EXTERNAL_OPENVOICEOS_PATH/package/python-gitpython/Config.in"
|
||||
source "$BR2_EXTERNAL_OPENVOICEOS_PATH/package/python-google-api-python-client/Config.in"
|
||||
source "$BR2_EXTERNAL_OPENVOICEOS_PATH/package/python-google-auth-httplib2/Config.in"
|
||||
source "$BR2_EXTERNAL_OPENVOICEOS_PATH/package/python-google-auth/Config.in"
|
||||
source "$BR2_EXTERNAL_OPENVOICEOS_PATH/package/python-google-trans-new/Config.in"
|
||||
source "$BR2_EXTERNAL_OPENVOICEOS_PATH/package/python-gpiod/Config.in"
|
||||
source "$BR2_EXTERNAL_OPENVOICEOS_PATH/package/python-gpsdclient/Config.in"
|
||||
source "$BR2_EXTERNAL_OPENVOICEOS_PATH/package/python-gtts/Config.in"
|
||||
source "$BR2_EXTERNAL_OPENVOICEOS_PATH/package/python-gtts_token/Config.in"
|
||||
source "$BR2_EXTERNAL_OPENVOICEOS_PATH/package/python-h3/Config.in"
|
||||
source "$BR2_EXTERNAL_OPENVOICEOS_PATH/package/python-hijri-converter/Config.in"
|
||||
source "$BR2_EXTERNAL_OPENVOICEOS_PATH/package/python-holidays/Config.in"
|
||||
source "$BR2_EXTERNAL_OPENVOICEOS_PATH/package/python-humanhash3/Config.in"
|
||||
source "$BR2_EXTERNAL_OPENVOICEOS_PATH/package/python-importlib-metadata/Config.in"
|
||||
source "$BR2_EXTERNAL_OPENVOICEOS_PATH/package/python-inflect/Config.in"
|
||||
source "$BR2_EXTERNAL_OPENVOICEOS_PATH/package/python-jaraco-collections/Config.in"
|
||||
|
@ -200,7 +198,6 @@ menu "Additional external python modules"
|
|||
source "$BR2_EXTERNAL_OPENVOICEOS_PATH/package/python-monotonic/Config.in"
|
||||
source "$BR2_EXTERNAL_OPENVOICEOS_PATH/package/python-msk/Config.in"
|
||||
source "$BR2_EXTERNAL_OPENVOICEOS_PATH/package/python-msm/Config.in"
|
||||
source "$BR2_EXTERNAL_OPENVOICEOS_PATH/package/python-multi-key-dict/Config.in"
|
||||
source "$BR2_EXTERNAL_OPENVOICEOS_PATH/package/python-neon-lang-plugin-libretranslate/Config.in"
|
||||
source "$BR2_EXTERNAL_OPENVOICEOS_PATH/package/python-neon-phal-plugin-fan/Config.in"
|
||||
source "$BR2_EXTERNAL_OPENVOICEOS_PATH/package/python-neon-phal-plugin-linear-led/Config.in"
|
||||
|
@ -234,17 +231,13 @@ menu "Additional external python modules"
|
|||
source "$BR2_EXTERNAL_OPENVOICEOS_PATH/package/python-pyaudio/Config.in"
|
||||
source "$BR2_EXTERNAL_OPENVOICEOS_PATH/package/python-pychromecast/Config.in"
|
||||
source "$BR2_EXTERNAL_OPENVOICEOS_PATH/package/python-pycpuinfo/Config.in"
|
||||
source "$BR2_EXTERNAL_OPENVOICEOS_PATH/package/python-pyee/Config.in"
|
||||
source "$BR2_EXTERNAL_OPENVOICEOS_PATH/package/python-pyftdi/Config.in"
|
||||
source "$BR2_EXTERNAL_OPENVOICEOS_PATH/package/python-pygithub/Config.in"
|
||||
source "$BR2_EXTERNAL_OPENVOICEOS_PATH/package/python-pyjokes/Config.in"
|
||||
source "$BR2_EXTERNAL_OPENVOICEOS_PATH/package/python-pymeeus/Config.in"
|
||||
source "$BR2_EXTERNAL_OPENVOICEOS_PATH/package/python-pymplayer/Config.in"
|
||||
source "$BR2_EXTERNAL_OPENVOICEOS_PATH/package/python-pyowm/Config.in"
|
||||
source "$BR2_EXTERNAL_OPENVOICEOS_PATH/package/python-pytube/Config.in"
|
||||
source "$BR2_EXTERNAL_OPENVOICEOS_PATH/package/python-pytzdata/Config.in"
|
||||
source "$BR2_EXTERNAL_OPENVOICEOS_PATH/package/python-pywebio/Config.in"
|
||||
source "$BR2_EXTERNAL_OPENVOICEOS_PATH/package/python-pyxdg/Config.in"
|
||||
source "$BR2_EXTERNAL_OPENVOICEOS_PATH/package/python-quantulum3/Config.in"
|
||||
source "$BR2_EXTERNAL_OPENVOICEOS_PATH/package/python-quebra-frases/Config.in"
|
||||
source "$BR2_EXTERNAL_OPENVOICEOS_PATH/package/python-rakekeywords/Config.in"
|
||||
|
@ -260,7 +253,6 @@ menu "Additional external python modules"
|
|||
source "$BR2_EXTERNAL_OPENVOICEOS_PATH/package/python-smbus2/Config.in"
|
||||
source "$BR2_EXTERNAL_OPENVOICEOS_PATH/package/python-smmap/Config.in"
|
||||
source "$BR2_EXTERNAL_OPENVOICEOS_PATH/package/python-sonopy/Config.in"
|
||||
source "$BR2_EXTERNAL_OPENVOICEOS_PATH/package/python-source/Config.in"
|
||||
source "$BR2_EXTERNAL_OPENVOICEOS_PATH/package/python-speech2text/Config.in"
|
||||
source "$BR2_EXTERNAL_OPENVOICEOS_PATH/package/python-speechrecognition/Config.in"
|
||||
source "$BR2_EXTERNAL_OPENVOICEOS_PATH/package/python-sqlalchemy-json/Config.in"
|
||||
|
@ -282,7 +274,6 @@ menu "Additional external python modules"
|
|||
source "$BR2_EXTERNAL_OPENVOICEOS_PATH/package/python-vosk-api/Config.in"
|
||||
source "$BR2_EXTERNAL_OPENVOICEOS_PATH/package/python-webcolors/Config.in"
|
||||
source "$BR2_EXTERNAL_OPENVOICEOS_PATH/package/python-webrtcvad/Config.in"
|
||||
source "$BR2_EXTERNAL_OPENVOICEOS_PATH/package/python-wheel/Config.in"
|
||||
source "$BR2_EXTERNAL_OPENVOICEOS_PATH/package/python-wikipedia-api/Config.in"
|
||||
source "$BR2_EXTERNAL_OPENVOICEOS_PATH/package/python-wikipedia-for-humans/Config.in"
|
||||
source "$BR2_EXTERNAL_OPENVOICEOS_PATH/package/python-xmlrunner/Config.in"
|
||||
|
|
|
@ -1 +1 @@
|
|||
cma=384M mitigations=off snd_bcm2835.enable_headphones=1 snd_bcm2835.enable_hdmi=1 snd_bcm2835.enable_compat_alsa=0 dwc_otg.lpm_enable=0 acpi=off cgroup_enable=memory psi=1 usb-storage.quirks=174c:55aa:u,2109:0715:u,152d:0578:u,152d:0579:u,152d:1561:u,174c:0829:u,14b0:0206:u
|
||||
mitigations=off snd_bcm2835.enable_headphones=1 snd_bcm2835.enable_hdmi=1 snd_bcm2835.enable_compat_alsa=0 dwc_otg.lpm_enable=0 acpi=off cgroup_enable=memory psi=1 usb-storage.quirks=174c:55aa:u,2109:0715:u,152d:0578:u,152d:0579:u,152d:1561:u,174c:0829:u,14b0:0206:u
|
|
@ -155,7 +155,7 @@ main() {
|
|||
|
||||
if [[ ${detection_results[TAS5806]} == true ]] ; then
|
||||
echo "Installing and configuring SJ-201 HAT"
|
||||
# Initializing XMOS xvf3510
|
||||
# Initializing XMOS xvf3510 based SJ-201 HAT
|
||||
dtoverlay xvf3510
|
||||
xvf3510-flash --direct "/usr/lib/firmware/xvf3510/app_xvf3510_int_spi_boot_v4_1_0.bin"
|
||||
# Initializing Texas Instruments 5806 Amplifier
|
||||
|
@ -168,10 +168,10 @@ main() {
|
|||
/usr/sbin/i2cset -a -y 1 0x04 101 30 i
|
||||
else
|
||||
echo "Assume revision-10 SJ-201 board"
|
||||
dtoverlay sj201-rev10-pwm-fan-overlay
|
||||
#dtoverlay sj201-rev10-pwm-fan-overlay
|
||||
fi
|
||||
echo "Configuring buttons"
|
||||
dtoverlay sj201-buttons-overlay
|
||||
#dtoverlay sj201-buttons-overlay
|
||||
fi
|
||||
|
||||
if [[ ${detection_results[AIYVOICEBONNET]} == true ]] ; then
|
||||
|
|
|
@ -1,78 +1,65 @@
|
|||
# Raspberry Pi 3 Configuration
|
||||
|
||||
# Basic setting
|
||||
arm_64bit=1
|
||||
|
||||
# Disable command line tags.
|
||||
disable_commandline_tags=2
|
||||
disable_overscan=1
|
||||
|
||||
# Specify UEFI firmware file.
|
||||
armstub=RPI_EFI.fd
|
||||
|
||||
# Enable UART for serial communication.
|
||||
enable_uart=1
|
||||
uart_2ndstage=1
|
||||
armstub=RPI_EFI.fd
|
||||
disable_commandline_tags=2
|
||||
|
||||
# Set device tree memory address range.
|
||||
device_tree_address=0x1f0000
|
||||
device_tree_end=0x200000
|
||||
|
||||
# Please note that this is only a sample, we recommend you to change it to fit
|
||||
# your needs.
|
||||
# You should override this file using a post-build script.
|
||||
# See http://buildroot.org/manual.html#rootfs-custom
|
||||
# and http://elinux.org/RPiconfig for a description of config.txt syntax
|
||||
# We always use the same names, the real used variant is selected by
|
||||
# BR2_PACKAGE_RPI_FIRMWARE_{DEFAULT,X,CD} choice
|
||||
# Custom bootloader files.
|
||||
start_file=start_x.elf
|
||||
fixup_file=fixup_x.dat
|
||||
|
||||
#kernel=Image
|
||||
|
||||
# To use an external initramfs file
|
||||
# initramfs rootfs.cpio.gz
|
||||
|
||||
# Disable overscan assuming the display supports displaying the full resolution
|
||||
# If the text shown on the screen disappears off the edge, comment this out
|
||||
# Disable overscan for full-resolution display.
|
||||
disable_overscan=1
|
||||
|
||||
# Automatically load overlays for detected DSI displays
|
||||
# Auto-detect DSI displays and load overlays.
|
||||
display_auto_detect=1
|
||||
|
||||
# Enable DRM VC4 V3D driver and setup the mode
|
||||
dtoverlay=vc4-fkms-v3d
|
||||
# dtoverlay=vc4-kms-v3d-pi4
|
||||
# hdmi_drive=2
|
||||
# hdmi_group=2
|
||||
# hdmi_mode=14
|
||||
# Graphics acceleration with VC4 V3D driver, uses 384MB CMA limited to 2 framebuffer.
|
||||
dtoverlay=vc4-fkms-v3d,cma-384
|
||||
max_framebuffers=2
|
||||
# uncomment if you get no picture on HDMI for a default "safe" mode
|
||||
|
||||
# Uncomment for HDMI safe mode.
|
||||
# hdmi_safe=1
|
||||
|
||||
# How much memory in MB to assign to the GPU on Pi models having
|
||||
# 256, 512 or 1024 MB total memory
|
||||
gpu_mem=256
|
||||
|
||||
# fixes rpi (3B, 3B+, 3A+, 4B and Zero W) ttyAMA0 serial console
|
||||
# Fixes for serial console on certain Pi models.
|
||||
dtoverlay=miniuart-bt
|
||||
|
||||
# enable autoprobing of Bluetooth driver without need of hciattach/btattach
|
||||
# Enable Bluetooth driver autoprobing.
|
||||
dtparam=krnbt=on
|
||||
|
||||
# Enable the onboard soundcard
|
||||
# Enable onboard audio.
|
||||
dtparam=audio=on
|
||||
|
||||
# Enable the hardware random generator
|
||||
# Enable hardware random number generator.
|
||||
dtparam=random=on
|
||||
|
||||
# Enable camera driver
|
||||
# dtoverlay=imx219
|
||||
# dtoverlay=ov5647
|
||||
# camera_auto_detect=1
|
||||
# Camera driver settings (uncomment to enable).
|
||||
# dtoverlay=imx219 # For IMX219 camera module
|
||||
# dtoverlay=ov5647 # For OV5647 camera module
|
||||
# camera_auto_detect=1 # Auto-detect camera type
|
||||
|
||||
# Disable rainbow color splash
|
||||
# Disable rainbow splash screen on boot.
|
||||
disable_splash=1
|
||||
|
||||
# Enable some optional hardware interfaces
|
||||
dtparam=i2c_arm=on
|
||||
dtparam=i2c_arm_baudrate=100000
|
||||
dtoverlay=i2s-mmap
|
||||
dtparam=i2s=on
|
||||
dtparam=spi=on
|
||||
# Enable I2C, I2S, and SPI interfaces for peripheral communication.
|
||||
dtparam=i2c=on,i2s=on,spi=on
|
||||
|
||||
# Use DWC2 instead of XHCI on the rpi3 to prevent issues with te RealTime kernel
|
||||
dtoverlay=dwc2
|
||||
|
||||
# Enable boost from 1.5Ghz to 1.8Ghz on compatible models
|
||||
arm_boost=1
|
||||
|
|
|
@ -1,73 +1,68 @@
|
|||
# Raspberry Pi 4 Configuration
|
||||
|
||||
# Basic setting
|
||||
arm_64bit=1
|
||||
enable_uart=1
|
||||
enable_gic=1
|
||||
|
||||
# Specify UEFI firmware file.
|
||||
armstub=RPI_EFI.fd
|
||||
disable_commandline_tags=2
|
||||
|
||||
# Enable UART for serial communication.
|
||||
enable_uart=1
|
||||
uart_2ndstage=1
|
||||
|
||||
# Enable GIC (Generic Interrupt Controller).
|
||||
enable_gic=1
|
||||
|
||||
# Set device tree memory address range.
|
||||
device_tree_address=0x1f0000
|
||||
device_tree_end=0x200000
|
||||
|
||||
# Please note that this is only a sample, we recommend you to change it to fit
|
||||
# your needs.
|
||||
# You should override this file using a post-build script.
|
||||
# See http://buildroot.org/manual.html#rootfs-custom
|
||||
# and http://elinux.org/RPiconfig for a description of config.txt syntax
|
||||
# We always use the same names, the real used variant is selected by
|
||||
# BR2_PACKAGE_RPI_FIRMWARE_{DEFAULT,X,CD} choice
|
||||
# Disable command line tags.
|
||||
disable_commandline_tags=2
|
||||
|
||||
# Custom bootloader files.
|
||||
start_file=start4x.elf
|
||||
fixup_file=fixup4x.dat
|
||||
|
||||
#kernel=Image
|
||||
|
||||
# To use an external initramfs file
|
||||
# initramfs rootfs.cpio.gz
|
||||
|
||||
# Disable overscan assuming the display supports displaying the full resolution
|
||||
# If the text shown on the screen disappears off the edge, comment this out
|
||||
# Disable overscan for full-resolution display.
|
||||
disable_overscan=1
|
||||
|
||||
# Automatically load overlays for detected DSI displays
|
||||
# Auto-detect DSI displays and load overlays.
|
||||
display_auto_detect=1
|
||||
|
||||
# Enable DRM VC4 V3D driver and setup the mode
|
||||
dtoverlay=vc4-fkms-v3d
|
||||
# dtoverlay=vc4-kms-v3d-pi4
|
||||
# hdmi_drive=2
|
||||
# hdmi_group=2
|
||||
# hdmi_mode=14
|
||||
# Graphics acceleration with VC4 V3D driver, uses 384MB CMA limited to 2 framebuffer.
|
||||
dtoverlay=vc4-fkms-v3d,cma-384
|
||||
max_framebuffers=2
|
||||
# uncomment if you get no picture on HDMI for a default "safe" mode
|
||||
|
||||
# Uncomment for HDMI safe mode.
|
||||
# hdmi_safe=1
|
||||
|
||||
# How much memory in MB to assign to the GPU on Pi models having
|
||||
# 256, 512 or 1024 MB total memory
|
||||
gpu_mem=256
|
||||
|
||||
# fixes rpi (3B, 3B+, 3A+, 4B and Zero W) ttyAMA0 serial console
|
||||
# Fixes for serial console on certain Pi models.
|
||||
dtoverlay=miniuart-bt
|
||||
|
||||
# enable autoprobing of Bluetooth driver without need of hciattach/btattach
|
||||
# Enable Bluetooth driver autoprobing.
|
||||
dtparam=krnbt=on
|
||||
|
||||
# Enable the onboard soundcard
|
||||
# Enable onboard audio.
|
||||
dtparam=audio=on
|
||||
|
||||
# Enable the hardware random generator
|
||||
# Enable hardware random number generator.
|
||||
dtparam=random=on
|
||||
|
||||
# Enable camera driver
|
||||
# dtoverlay=imx219
|
||||
# dtoverlay=ov5647
|
||||
# camera_auto_detect=1
|
||||
# Camera driver settings (uncomment to enable).
|
||||
# dtoverlay=imx219 # For IMX219 camera module
|
||||
# dtoverlay=ov5647 # For OV5647 camera module
|
||||
# camera_auto_detect=1 # Auto-detect camera type
|
||||
|
||||
# Disable rainbow color splash
|
||||
# Disable rainbow splash screen on boot.
|
||||
disable_splash=1
|
||||
|
||||
# Enable some optional hardware interfaces
|
||||
dtparam=i2c_arm=on
|
||||
dtparam=i2c_arm_baudrate=100000
|
||||
dtoverlay=i2s-mmap
|
||||
dtparam=i2s=on
|
||||
dtparam=spi=on
|
||||
# Enable I2C, I2S, and SPI interfaces for peripheral communication.
|
||||
dtparam=i2c=on,i2s=on,spi=on
|
||||
|
||||
# Enable boost from 1.5Ghz to 1.8Ghz on compatible models
|
||||
# Enable CPU frequency boost on compatible models.
|
||||
arm_boost=1
|
||||
|
|
Binary file not shown.
|
@ -0,0 +1,74 @@
|
|||
# Raspberry Pi 5 Configuration
|
||||
|
||||
# Basic setting
|
||||
arm_64bit=1
|
||||
|
||||
# Specify UEFI firmware file.
|
||||
armstub=RPI_EFI.fd
|
||||
|
||||
# Enable UART for serial communication.
|
||||
enable_uart=1
|
||||
uart_2ndstage=1
|
||||
|
||||
# Enable GIC (Generic Interrupt Controller).
|
||||
enable_gic=1
|
||||
|
||||
# Set device tree memory address range.
|
||||
device_tree_address=0x1f0000
|
||||
device_tree_end=0x210000
|
||||
|
||||
# Keep RP1 PCIe configured on boot for PCIe peripherals.
|
||||
pciex4_reset=0
|
||||
|
||||
# Max power to USB ports for high-power devices.
|
||||
usb_max_current_enable=1
|
||||
|
||||
# Run CPU at max speed for better performance.
|
||||
# force_turbo=1
|
||||
|
||||
# Custom bootloader files.
|
||||
start_file=start4x.elf
|
||||
fixup_file=fixup4x.dat
|
||||
|
||||
# Disable overscan for full-resolution display.
|
||||
disable_overscan=1
|
||||
|
||||
# Auto-detect DSI displays and load overlays.
|
||||
display_auto_detect=1
|
||||
|
||||
# Graphics acceleration with VC4 V3D driver, uses 512MB CMA limited to 2 framebuffer.
|
||||
dtoverlay=vc4-fkms-v3d,cma-512
|
||||
max_framebuffers=2
|
||||
|
||||
# Uncomment for HDMI safe mode.
|
||||
# hdmi_safe=1
|
||||
|
||||
# How much memory in MB to assign to the GPU on Pi models having
|
||||
# 256, 512 or 1024 MB total memory
|
||||
gpu_mem=256
|
||||
|
||||
# Fixes for serial console on certain Pi models.
|
||||
dtoverlay=miniuart-bt
|
||||
|
||||
# Enable Bluetooth driver autoprobing.
|
||||
dtparam=krnbt=on
|
||||
|
||||
# Enable onboard audio.
|
||||
dtparam=audio=on
|
||||
|
||||
# Enable hardware random number generator.
|
||||
dtparam=random=on
|
||||
|
||||
# Camera driver settings (uncomment to enable).
|
||||
# dtoverlay=imx219 # For IMX219 camera module
|
||||
# dtoverlay=ov5647 # For OV5647 camera module
|
||||
# camera_auto_detect=1 # Auto-detect camera type
|
||||
|
||||
# Disable rainbow splash screen on boot.
|
||||
disable_splash=1
|
||||
|
||||
# Enable I2C, I2S, and SPI interfaces for peripheral communication.
|
||||
dtparam=i2c=on,i2s=on,spi=on
|
||||
|
||||
# Enable CPU frequency boost on compatible models.
|
||||
arm_boost=1
|
|
@ -0,0 +1,67 @@
|
|||
image esp.vfat {
|
||||
vfat {
|
||||
files = {
|
||||
"bcm2712-rpi-5-b.dtb",
|
||||
"rpi-firmware/cmdline.txt",
|
||||
"rpi-firmware/config.txt",
|
||||
"rpi-firmware/fixup4x.dat",
|
||||
"rpi-firmware/start4x.elf",
|
||||
"rpi-firmware/overlays",
|
||||
"rpi-firmware/RPI_EFI.fd",
|
||||
"rpi-eeprom/pieeprom.sig",
|
||||
"rpi-eeprom/pieeprom.upd"
|
||||
}
|
||||
file EFI {
|
||||
image = "efi-part/EFI"
|
||||
}
|
||||
}
|
||||
size = 16M
|
||||
}
|
||||
|
||||
image overlayfs.ext4 {
|
||||
name = "overlayfs"
|
||||
ext4 {
|
||||
use-mke2fs = "true"
|
||||
}
|
||||
size = 256M
|
||||
}
|
||||
|
||||
image disk.img {
|
||||
hdimage {
|
||||
partition-table-type = "gpt"
|
||||
}
|
||||
|
||||
partition esp {
|
||||
align = 1M
|
||||
partition-uuid = 9262aee5-2d23-4e09-baac-280591e2e834
|
||||
partition-type-uuid = c12a7328-f81f-11d2-ba4b-00a0c93ec93b
|
||||
bootable = "true"
|
||||
image = "esp.vfat"
|
||||
}
|
||||
|
||||
partition rootfs-1 {
|
||||
partition-uuid = c0932a41-44cf-463b-8152-d43188553ed4
|
||||
partition-type-uuid = 0fc63daf-8483-4772-8e79-3d69d8477de4
|
||||
image = "rootfs.squashfs"
|
||||
size = 512M
|
||||
}
|
||||
|
||||
partition rootfs-2 {
|
||||
partition-uuid = 3adea996-45ad-4928-920e-ffb5aedd00cb
|
||||
partition-type-uuid = 0fc63daf-8483-4772-8e79-3d69d8477de4
|
||||
image = "rootfs.squashfs"
|
||||
size = 512M
|
||||
}
|
||||
|
||||
partition overlayfs {
|
||||
partition-uuid = f1326040-5236-40eb-b683-aaa100a9afcf
|
||||
partition-type-uuid = 0fc63daf-8483-4772-8e79-3d69d8477de4
|
||||
image = "overlayfs.ext4"
|
||||
}
|
||||
|
||||
partition homefs {
|
||||
partition-uuid = ba3c2691-cce9-4963-b773-42c440c235ec
|
||||
partition-type-uuid = 0fc63daf-8483-4772-8e79-3d69d8477de4
|
||||
image = "homefs.ext4"
|
||||
}
|
||||
}
|
|
@ -0,0 +1,3 @@
|
|||
BOARD_ID=rpi5-64
|
||||
BOARD_NAME="RaspberryPi 5 64bit"
|
||||
CHASSIS=embedded
|
|
@ -0,0 +1 @@
|
|||
rpi5 1.0
|
|
@ -0,0 +1,21 @@
|
|||
software =
|
||||
{
|
||||
name = "OpenVoiceOS";
|
||||
description = "Firmware update for OpenVoiceOS";
|
||||
version = "0.1.1";
|
||||
bootloader_transaction_marker = false;
|
||||
bootloader_state_marker = false;
|
||||
rpi5 = {
|
||||
hardware-compatibility: ["1.0"];
|
||||
update: {
|
||||
rootfs: {
|
||||
images: ({
|
||||
filename = "rootfs.squashfs";
|
||||
device = "/dev/update";
|
||||
installed-directly = true;
|
||||
type = "raw";
|
||||
});
|
||||
};
|
||||
};
|
||||
}
|
||||
}
|
|
@ -143,7 +143,6 @@ BR2_PACKAGE_PYTHON3_PY_PYC=y
|
|||
BR2_PACKAGE_PYTHON_GOBJECT=y
|
||||
BR2_PACKAGE_PYTHON_PIP=y
|
||||
BR2_PACKAGE_PYTHON_PODMAN_COMPOSE=y
|
||||
BR2_PACKAGE_PYTHON_RPI_GPIO=y
|
||||
BR2_PACKAGE_PYTHON_SPIDEV=y
|
||||
BR2_PACKAGE_ALSA_PLUGINS=y
|
||||
BR2_PACKAGE_LIBVORBIS=y
|
||||
|
@ -321,6 +320,8 @@ BR2_PACKAGE_HOST_MTOOLS=y
|
|||
BR2_PACKAGE_HOST_PKGCONF=y
|
||||
BR2_PACKAGE_BTSPEAKER=y
|
||||
BR2_PACKAGE_HOSTNAME_SERVICE=y
|
||||
BR2_PACKAGE_LIBGPIOD2=y
|
||||
BR2_PACKAGE_LIBGPIOD2_TOOLS=y
|
||||
BR2_PACKAGE_NCPAMIXER=y
|
||||
BR2_PACKAGE_OVOS_BUS_SERVER=y
|
||||
BR2_PACKAGE_OVOS_CONTAINERS=y
|
||||
|
@ -332,4 +333,5 @@ BR2_PACKAGE_ROC_TOOLKIT=y
|
|||
BR2_PACKAGE_USERLAND_TOOLS=y
|
||||
BR2_PACKAGE_VOCALFUSION=y
|
||||
BR2_PACKAGE_WIFI_CONNECT=y
|
||||
BR2_PACKAGE_PYTHON_ADAFRUIT_BLINKA=y
|
||||
BR2_PACKAGE_PYTHON_SMBUS2=y
|
||||
|
|
|
@ -1,13 +1,9 @@
|
|||
BR2_aarch64=y
|
||||
BR2_cortex_a72=y
|
||||
BR2_PACKAGE_GLIBC_UTILS=y
|
||||
BR2_BINUTILS_VERSION_2_39_X=y
|
||||
BR2_GCC_VERSION_12_X=y
|
||||
BR2_TOOLCHAIN_BUILDROOT_CXX=y
|
||||
BR2_TOOLCHAIN_EXTERNAL=y
|
||||
BR2_DL_DIR="../../downloads"
|
||||
BR2_CCACHE=y
|
||||
BR2_CCACHE_DIR="ccache"
|
||||
BR2_OPTIMIZE_2=y
|
||||
BR2_ENABLE_LTO=y
|
||||
BR2_GLOBAL_PATCH_DIR="$(BR2_EXTERNAL)/patches $(BR2_EXTERNAL)/board/ovos/raspberrypi/patches"
|
||||
BR2_FORCE_HOST_BUILD=y
|
||||
|
@ -18,6 +14,7 @@ BR2_TARGET_GENERIC_PASSWD_SHA512=y
|
|||
BR2_INIT_SYSTEMD=y
|
||||
# BR2_TARGET_ENABLE_ROOT_LOGIN is not set
|
||||
BR2_SYSTEM_BIN_SH_BASH=y
|
||||
# BR2_TARGET_GENERIC_GETTY is not set
|
||||
# BR2_TARGET_GENERIC_REMOUNT_ROOTFS_RW is not set
|
||||
BR2_SYSTEM_DHCP="eth0"
|
||||
# BR2_ENABLE_LOCALE_PURGE is not set
|
||||
|
@ -30,7 +27,7 @@ BR2_ROOTFS_POST_IMAGE_SCRIPT="$(BR2_EXTERNAL)/scripts/post-image.sh"
|
|||
BR2_ROOTFS_POST_SCRIPT_ARGS="$(BR2_EXTERNAL)/board/ovos/raspberrypi/rpi4"
|
||||
BR2_LINUX_KERNEL=y
|
||||
BR2_LINUX_KERNEL_CUSTOM_TARBALL=y
|
||||
BR2_LINUX_KERNEL_CUSTOM_TARBALL_LOCATION="$(call github,raspberrypi,linux,5e78d297b997dcc7a78ba747a62fb28d0b6a10d8)/linux-5e78d297b997dcc7a78ba747a62fb28d0b6a10d8.tar.gz"
|
||||
BR2_LINUX_KERNEL_CUSTOM_TARBALL_LOCATION="$(call github,raspberrypi,linux,9e78addad23f9fc66b0c6399d9234e44a89d699a)/linux-9e78addad23f9fc66b0c6399d9234e44a89d699a.tar.gz"
|
||||
BR2_LINUX_KERNEL_DEFCONFIG="bcm2711"
|
||||
BR2_LINUX_KERNEL_CONFIG_FRAGMENT_FILES="$(BR2_EXTERNAL)/kernel/ovos.config $(BR2_EXTERNAL)/kernel/device-drivers.config $(BR2_EXTERNAL)/kernel/docker.config $(BR2_EXTERNAL)/board/ovos/raspberrypi/kernel.config"
|
||||
BR2_LINUX_KERNEL_LZ4=y
|
||||
|
@ -65,11 +62,11 @@ BR2_PACKAGE_FFMPEG_AVRESAMPLE=y
|
|||
BR2_PACKAGE_FFMPEG_POSTPROC=y
|
||||
BR2_PACKAGE_FLAC=y
|
||||
BR2_PACKAGE_PIPEWIRE=y
|
||||
BR2_PACKAGE_PIPEWIRE_COMPRESS_OFFLOAD=y
|
||||
BR2_PACKAGE_PIPEWIRE_EXAMPLES=y
|
||||
BR2_PACKAGE_PIPEWIRE_GSTREAMER=y
|
||||
BR2_PACKAGE_PIPEWIRE_V4L2=y
|
||||
BR2_PACKAGE_PULSEAUDIO=y
|
||||
BR2_PACKAGE_TINYCOMPRESS=y
|
||||
BR2_PACKAGE_V4L2GRAB=y
|
||||
BR2_PACKAGE_V4L2LOOPBACK=y
|
||||
BR2_PACKAGE_V4L2LOOPBACK_UTILS=y
|
||||
|
@ -141,7 +138,6 @@ BR2_PACKAGE_PYTHON3_PY_PYC=y
|
|||
BR2_PACKAGE_PYTHON_GOBJECT=y
|
||||
BR2_PACKAGE_PYTHON_PIP=y
|
||||
BR2_PACKAGE_PYTHON_PODMAN_COMPOSE=y
|
||||
BR2_PACKAGE_PYTHON_RPI_GPIO=y
|
||||
BR2_PACKAGE_PYTHON_SPIDEV=y
|
||||
BR2_PACKAGE_ALSA_PLUGINS=y
|
||||
BR2_PACKAGE_LIBVORBIS=y
|
||||
|
@ -180,7 +176,7 @@ BR2_PACKAGE_LIBV4L_UTILS=y
|
|||
BR2_PACKAGE_JSON_GLIB=y
|
||||
BR2_PACKAGE_LIBCAMERA=y
|
||||
BR2_PACKAGE_LIBCAMERA_V4L2=y
|
||||
BR2_PACKAGE_LIBCAMERA_PIPELINE_RASPBERRYPI=y
|
||||
BR2_PACKAGE_LIBCAMERA_PIPELINE_RPI_VC4=y
|
||||
BR2_PACKAGE_LIBCAMERA_PIPELINE_SIMPLE=y
|
||||
BR2_PACKAGE_LIBCAMERA_PIPELINE_UVCVIDEO=y
|
||||
BR2_PACKAGE_LIBCAMERA_PIPELINE_VIMC=y
|
||||
|
@ -199,7 +195,6 @@ BR2_PACKAGE_ZEROMQ_WEBSOCKET=y
|
|||
BR2_PACKAGE_LIBCAP_TOOLS=y
|
||||
BR2_PACKAGE_LIBNPTH=y
|
||||
BR2_PACKAGE_LIBFRIBIDI=y
|
||||
BR2_PACKAGE_PCRE2=y
|
||||
BR2_PACKAGE_AARDVARK_DNS=y
|
||||
BR2_PACKAGE_AVAHI=y
|
||||
BR2_PACKAGE_AVAHI_DAEMON=y
|
||||
|
@ -299,7 +294,6 @@ BR2_PACKAGE_UTIL_LINUX_MOUNTPOINT=y
|
|||
BR2_PACKAGE_UTIL_LINUX_PARTX=y
|
||||
BR2_PACKAGE_UTIL_LINUX_PIVOT_ROOT=y
|
||||
BR2_PACKAGE_UTIL_LINUX_SU=y
|
||||
BR2_PACKAGE_UTIL_LINUX_SULOGIN=y
|
||||
BR2_PACKAGE_UTIL_LINUX_SWITCH_ROOT=y
|
||||
BR2_PACKAGE_UTIL_LINUX_ZRAMCTL=y
|
||||
BR2_PACKAGE_LESS=y
|
||||
|
@ -331,5 +325,5 @@ BR2_PACKAGE_ROC_TOOLKIT=y
|
|||
BR2_PACKAGE_RPI_EEPROM=y
|
||||
BR2_PACKAGE_USERLAND_TOOLS=y
|
||||
BR2_PACKAGE_VOCALFUSION=y
|
||||
BR2_PACKAGE_WIFI_CONNECT=y
|
||||
BR2_PACKAGE_PYTHON_ADAFRUIT_BLINKA=y
|
||||
BR2_PACKAGE_PYTHON_SMBUS2=y
|
||||
|
|
|
@ -0,0 +1,340 @@
|
|||
BR2_aarch64=y
|
||||
BR2_cortex_a76_a55=y
|
||||
BR2_ARM_FPU_VFPV4=y
|
||||
BR2_ARM64_PAGE_SIZE_16K=y
|
||||
BR2_PACKAGE_GLIBC_UTILS=y
|
||||
BR2_BINUTILS_VERSION_2_39_X=y
|
||||
BR2_GCC_VERSION_12_X=y
|
||||
BR2_TOOLCHAIN_BUILDROOT_CXX=y
|
||||
BR2_DL_DIR="/media/psf/OVOSbuildroot/downloads"
|
||||
BR2_CCACHE=y
|
||||
BR2_CCACHE_DIR="/media/psf/OVOSbuildroot/ccache"
|
||||
BR2_OPTIMIZE_2=y
|
||||
BR2_ENABLE_LTO=y
|
||||
BR2_GLOBAL_PATCH_DIR="$(BR2_EXTERNAL)/patches $(BR2_EXTERNAL)/board/ovos/raspberrypi/patches"
|
||||
BR2_FORCE_HOST_BUILD=y
|
||||
BR2_SSP_REGULAR=y
|
||||
BR2_TARGET_GENERIC_HOSTNAME="OpenVoiceOS"
|
||||
BR2_TARGET_GENERIC_ISSUE="Welcome to OpenVoiceOS"
|
||||
BR2_TARGET_GENERIC_PASSWD_SHA512=y
|
||||
BR2_INIT_SYSTEMD=y
|
||||
# BR2_TARGET_ENABLE_ROOT_LOGIN is not set
|
||||
BR2_SYSTEM_BIN_SH_BASH=y
|
||||
# BR2_TARGET_GENERIC_REMOUNT_ROOTFS_RW is not set
|
||||
BR2_SYSTEM_DHCP="eth0"
|
||||
# BR2_ENABLE_LOCALE_PURGE is not set
|
||||
BR2_GENERATE_LOCALE="en_US.UTF-8"
|
||||
BR2_SYSTEM_ENABLE_NLS=y
|
||||
BR2_ROOTFS_USERS_TABLES="$(BR2_EXTERNAL)/user_table.txt"
|
||||
BR2_ROOTFS_OVERLAY="$(BR2_EXTERNAL)/rootfs-overlay $(BR2_EXTERNAL)/board/ovos/raspberrypi/rootfs-overlay $(BR2_EXTERNAL)/board/ovos/raspberrypi/rpi5/rootfs-overlay"
|
||||
BR2_ROOTFS_POST_BUILD_SCRIPT="$(BR2_EXTERNAL)/scripts/post-build.sh"
|
||||
BR2_ROOTFS_POST_IMAGE_SCRIPT="$(BR2_EXTERNAL)/scripts/post-image.sh"
|
||||
BR2_ROOTFS_POST_SCRIPT_ARGS="$(BR2_EXTERNAL)/board/ovos/raspberrypi/rpi5"
|
||||
BR2_LINUX_KERNEL=y
|
||||
BR2_LINUX_KERNEL_CUSTOM_TARBALL=y
|
||||
BR2_LINUX_KERNEL_DEFCONFIG="bcm2712"
|
||||
BR2_LINUX_KERNEL_CUSTOM_TARBALL_LOCATION="$(call github,raspberrypi,linux,5e78d297b997dcc7a78ba747a62fb28d0b6a10d8)/linux-5e78d297b997dcc7a78ba747a62fb28d0b6a10d8.tar.gz"
|
||||
BR2_LINUX_KERNEL_CONFIG_FRAGMENT_FILES="$(BR2_EXTERNAL)/kernel/ovos.config $(BR2_EXTERNAL)/kernel/device-drivers.config $(BR2_EXTERNAL)/kernel/docker.config $(BR2_EXTERNAL)/board/ovos/raspberrypi/kernel.config"
|
||||
BR2_LINUX_KERNEL_LZ4=y
|
||||
BR2_LINUX_KERNEL_DTS_SUPPORT=y
|
||||
BR2_LINUX_KERNEL_INTREE_DTS_NAME="broadcom/bcm2712-rpi-5-b"
|
||||
BR2_LINUX_KERNEL_INSTALL_TARGET=y
|
||||
BR2_LINUX_KERNEL_NEEDS_HOST_OPENSSL=y
|
||||
BR2_LINUX_KERNEL_NEEDS_HOST_LIBELF=y
|
||||
BR2_PACKAGE_LINUX_TOOLS_GPIO=y
|
||||
BR2_PACKAGE_BUSYBOX_CONFIG="$(BR2_EXTERNAL)/busybox.config"
|
||||
BR2_PACKAGE_ALSA_UTILS=y
|
||||
BR2_PACKAGE_ALSA_UTILS_ALSACONF=y
|
||||
BR2_PACKAGE_ALSA_UTILS_ACONNECT=y
|
||||
BR2_PACKAGE_ALSA_UTILS_ALSALOOP=y
|
||||
BR2_PACKAGE_ALSA_UTILS_ALSAUCM=y
|
||||
BR2_PACKAGE_ALSA_UTILS_ALSATPLG=y
|
||||
BR2_PACKAGE_ALSA_UTILS_AMIDI=y
|
||||
BR2_PACKAGE_ALSA_UTILS_AMIXER=y
|
||||
BR2_PACKAGE_ALSA_UTILS_APLAY=y
|
||||
BR2_PACKAGE_ALSA_UTILS_APLAYMIDI=y
|
||||
BR2_PACKAGE_ALSA_UTILS_ARECORDMIDI=y
|
||||
BR2_PACKAGE_ALSA_UTILS_ASEQDUMP=y
|
||||
BR2_PACKAGE_ALSA_UTILS_ASEQNET=y
|
||||
BR2_PACKAGE_ALSA_UTILS_BAT=y
|
||||
BR2_PACKAGE_ALSA_UTILS_IECSET=y
|
||||
BR2_PACKAGE_ALSA_UTILS_SPEAKER_TEST=y
|
||||
BR2_PACKAGE_FFMPEG_GPL=y
|
||||
BR2_PACKAGE_FFMPEG_NONFREE=y
|
||||
BR2_PACKAGE_FFMPEG_FFPLAY=y
|
||||
BR2_PACKAGE_FFMPEG_FFPROBE=y
|
||||
BR2_PACKAGE_FFMPEG_AVRESAMPLE=y
|
||||
BR2_PACKAGE_FFMPEG_POSTPROC=y
|
||||
BR2_PACKAGE_FLAC=y
|
||||
BR2_PACKAGE_PIPEWIRE=y
|
||||
BR2_PACKAGE_PIPEWIRE_COMPRESS_OFFLOAD=y
|
||||
BR2_PACKAGE_PIPEWIRE_EXAMPLES=y
|
||||
BR2_PACKAGE_PIPEWIRE_GSTREAMER=y
|
||||
BR2_PACKAGE_PIPEWIRE_V4L2=y
|
||||
BR2_PACKAGE_PULSEAUDIO=y
|
||||
BR2_PACKAGE_V4L2GRAB=y
|
||||
BR2_PACKAGE_V4L2LOOPBACK=y
|
||||
BR2_PACKAGE_V4L2LOOPBACK_UTILS=y
|
||||
BR2_PACKAGE_GZIP=y
|
||||
BR2_PACKAGE_LZIP=y
|
||||
BR2_PACKAGE_P7ZIP=y
|
||||
BR2_PACKAGE_UNRAR=y
|
||||
BR2_PACKAGE_UNZIP=y
|
||||
BR2_PACKAGE_ZIP=y
|
||||
BR2_PACKAGE_LSOF=y
|
||||
BR2_PACKAGE_MEMSTAT=y
|
||||
BR2_PACKAGE_NMON=y
|
||||
BR2_PACKAGE_BINUTILS=y
|
||||
BR2_PACKAGE_CHECK=y
|
||||
BR2_PACKAGE_DIFFUTILS=y
|
||||
BR2_PACKAGE_FINDUTILS=y
|
||||
BR2_PACKAGE_GIT_CRYPT=y
|
||||
BR2_PACKAGE_GREP=y
|
||||
BR2_PACKAGE_JO=y
|
||||
BR2_PACKAGE_JQ=y
|
||||
BR2_PACKAGE_PATCH=y
|
||||
BR2_PACKAGE_CPIO=y
|
||||
BR2_PACKAGE_DOSFSTOOLS=y
|
||||
BR2_PACKAGE_DOSFSTOOLS_FATLABEL=y
|
||||
BR2_PACKAGE_DOSFSTOOLS_FSCK_FAT=y
|
||||
BR2_PACKAGE_DOSFSTOOLS_MKFS_FAT=y
|
||||
BR2_PACKAGE_E2FSPROGS=y
|
||||
BR2_PACKAGE_E2FSPROGS_E2IMAGE=y
|
||||
BR2_PACKAGE_E2FSPROGS_FUSE2FS=y
|
||||
BR2_PACKAGE_E2FSPROGS_RESIZE2FS=y
|
||||
BR2_PACKAGE_FUSE_OVERLAYFS=y
|
||||
BR2_PACKAGE_MTD=y
|
||||
BR2_PACKAGE_NFS_UTILS=y
|
||||
BR2_PACKAGE_NTFS_3G=y
|
||||
BR2_PACKAGE_SQUASHFS=y
|
||||
BR2_PACKAGE_SQUASHFS_LZ4=y
|
||||
BR2_PACKAGE_SQUASHFS_LZMA=y
|
||||
BR2_PACKAGE_SQUASHFS_LZO=y
|
||||
BR2_PACKAGE_SQUASHFS_XZ=y
|
||||
BR2_PACKAGE_SQUASHFS_ZSTD=y
|
||||
BR2_PACKAGE_MESA3D=y
|
||||
BR2_PACKAGE_MESA3D_GALLIUM_DRIVER_V3D=y
|
||||
BR2_PACKAGE_MESA3D_OPENGL_ES=y
|
||||
BR2_PACKAGE_BRCMFMAC_SDIO_FIRMWARE_RPI=y
|
||||
BR2_PACKAGE_BRCMFMAC_SDIO_FIRMWARE_RPI_BT=y
|
||||
BR2_PACKAGE_BRCMFMAC_SDIO_FIRMWARE_RPI_WIFI=y
|
||||
BR2_PACKAGE_RPI_FIRMWARE=y
|
||||
BR2_PACKAGE_RPI_FIRMWARE_VARIANT_PI4=y
|
||||
BR2_PACKAGE_RPI_FIRMWARE_VARIANT_PI4_X=y
|
||||
BR2_PACKAGE_RPI_FIRMWARE_VARIANT_PI4_CD=y
|
||||
BR2_PACKAGE_RPI_FIRMWARE_CONFIG_FILE="$(BR2_EXTERNAL)/board/ovos/raspberrypi/rpi5/config.txt"
|
||||
BR2_PACKAGE_AVRDUDE=y
|
||||
BR2_PACKAGE_CRYPTSETUP=y
|
||||
BR2_PACKAGE_DBUS_PYTHON=y
|
||||
BR2_PACKAGE_GPTFDISK=y
|
||||
BR2_PACKAGE_GPTFDISK_GDISK=y
|
||||
BR2_PACKAGE_GPTFDISK_SGDISK=y
|
||||
BR2_PACKAGE_GPTFDISK_CGDISK=y
|
||||
BR2_PACKAGE_I2C_TOOLS=y
|
||||
BR2_PACKAGE_PARTED=y
|
||||
BR2_PACKAGE_RASPI_GPIO=y
|
||||
BR2_PACKAGE_READ_EDID=y
|
||||
BR2_PACKAGE_RNG_TOOLS=y
|
||||
BR2_PACKAGE_SPI_TOOLS=y
|
||||
BR2_PACKAGE_USB_MODESWITCH_DATA=y
|
||||
BR2_PACKAGE_LUA=y
|
||||
BR2_PACKAGE_PYTHON3=y
|
||||
BR2_PACKAGE_PYTHON3_PY_PYC=y
|
||||
BR2_PACKAGE_PYTHON_GOBJECT=y
|
||||
BR2_PACKAGE_PYTHON_PIP=y
|
||||
BR2_PACKAGE_PYTHON_PODMAN_COMPOSE=y
|
||||
BR2_PACKAGE_PYTHON_SPIDEV=y
|
||||
BR2_PACKAGE_ALSA_PLUGINS=y
|
||||
BR2_PACKAGE_LIBVORBIS=y
|
||||
BR2_PACKAGE_LILV=y
|
||||
BR2_PACKAGE_OPUS=y
|
||||
BR2_PACKAGE_PORTAUDIO=y
|
||||
BR2_PACKAGE_SBC=y
|
||||
BR2_PACKAGE_SBC_TOOLS=y
|
||||
BR2_PACKAGE_WEBRTC_AUDIO_PROCESSING=y
|
||||
BR2_PACKAGE_LIBARCHIVE=y
|
||||
BR2_PACKAGE_LIBDEFLATE=y
|
||||
BR2_PACKAGE_LZ4_PROGS=y
|
||||
BR2_PACKAGE_CA_CERTIFICATES=y
|
||||
BR2_PACKAGE_LIBKSBA=y
|
||||
BR2_PACKAGE_LIBSSH2=y
|
||||
BR2_PACKAGE_LIBOPENSSL_BIN=y
|
||||
BR2_PACKAGE_LIBOPENSSL_ENGINES=y
|
||||
BR2_PACKAGE_LIBCONFIG=y
|
||||
BR2_PACKAGE_LIBLOCKFILE=y
|
||||
BR2_PACKAGE_LIBNFS=y
|
||||
BR2_PACKAGE_LIBSYSFS=y
|
||||
BR2_PACKAGE_LOCKDEV=y
|
||||
BR2_PACKAGE_PHYSFS=y
|
||||
BR2_PACKAGE_FONTCONFIG=y
|
||||
BR2_PACKAGE_HARFBUZZ=y
|
||||
BR2_PACKAGE_LIBEXIF=y
|
||||
BR2_PACKAGE_LIBPNG=y
|
||||
BR2_PACKAGE_OPENJPEG=y
|
||||
BR2_PACKAGE_PIXMAN=y
|
||||
BR2_PACKAGE_TIFF=y
|
||||
BR2_PACKAGE_WEBP=y
|
||||
BR2_PACKAGE_WIREPLUMBER=y
|
||||
BR2_PACKAGE_ZBAR=y
|
||||
BR2_PACKAGE_LIBINPUT=y
|
||||
BR2_PACKAGE_LIBV4L_UTILS=y
|
||||
BR2_PACKAGE_JSON_GLIB=y
|
||||
BR2_PACKAGE_LIBCAMERA=y
|
||||
BR2_PACKAGE_LIBCAMERA_V4L2=y
|
||||
BR2_PACKAGE_LIBCAMERA_PIPELINE_RASPBERRYPI=y
|
||||
BR2_PACKAGE_LIBCAMERA_PIPELINE_SIMPLE=y
|
||||
BR2_PACKAGE_LIBCAMERA_PIPELINE_UVCVIDEO=y
|
||||
BR2_PACKAGE_LIBCAMERA_PIPELINE_VIMC=y
|
||||
BR2_PACKAGE_LIBCURL=y
|
||||
BR2_PACKAGE_LIBCURL_CURL=y
|
||||
BR2_PACKAGE_LIBDNET=y
|
||||
BR2_PACKAGE_LIBNICE=y
|
||||
BR2_PACKAGE_LIBRSYNC=y
|
||||
BR2_PACKAGE_LIBSOUP=y
|
||||
BR2_PACKAGE_LIBSRTP=y
|
||||
BR2_PACKAGE_LIBURIPARSER=y
|
||||
BR2_PACKAGE_LIBWEBSOCKETS=y
|
||||
BR2_PACKAGE_SLIRP4NETNS=y
|
||||
BR2_PACKAGE_ZEROMQ=y
|
||||
BR2_PACKAGE_ZEROMQ_WEBSOCKET=y
|
||||
BR2_PACKAGE_LIBCAP_TOOLS=y
|
||||
BR2_PACKAGE_LIBNPTH=y
|
||||
BR2_PACKAGE_LIBFRIBIDI=y
|
||||
BR2_PACKAGE_PCRE2=y
|
||||
BR2_PACKAGE_AARDVARK_DNS=y
|
||||
BR2_PACKAGE_AVAHI=y
|
||||
BR2_PACKAGE_AVAHI_DAEMON=y
|
||||
BR2_PACKAGE_AVAHI_LIBDNSSD_COMPATIBILITY=y
|
||||
BR2_PACKAGE_AVAHI_DEFAULT_SERVICES=y
|
||||
BR2_PACKAGE_BLUEZ_TOOLS=y
|
||||
BR2_PACKAGE_BLUEZ5_UTILS=y
|
||||
BR2_PACKAGE_BLUEZ5_UTILS_OBEX=y
|
||||
BR2_PACKAGE_BLUEZ5_UTILS_CLIENT=y
|
||||
BR2_PACKAGE_BLUEZ5_UTILS_MONITOR=y
|
||||
BR2_PACKAGE_BLUEZ5_UTILS_EXPERIMENTAL=y
|
||||
BR2_PACKAGE_BLUEZ5_UTILS_PLUGINS_HEALTH=y
|
||||
BR2_PACKAGE_BLUEZ5_UTILS_PLUGINS_NFC=y
|
||||
BR2_PACKAGE_BLUEZ5_UTILS_PLUGINS_SAP=y
|
||||
BR2_PACKAGE_BLUEZ5_UTILS_TOOLS_HID2HCI=y
|
||||
BR2_PACKAGE_CRDA=y
|
||||
BR2_PACKAGE_DNSMASQ=y
|
||||
BR2_PACKAGE_IFUPDOWN=y
|
||||
BR2_PACKAGE_IPROUTE2=y
|
||||
BR2_PACKAGE_IPUTILS=y
|
||||
BR2_PACKAGE_IW=y
|
||||
BR2_PACKAGE_NET_TOOLS=y
|
||||
BR2_PACKAGE_NETAVARK=y
|
||||
BR2_PACKAGE_NETWORK_MANAGER=y
|
||||
BR2_PACKAGE_NETWORK_MANAGER_TUI=y
|
||||
BR2_PACKAGE_NETWORK_MANAGER_CLI=y
|
||||
BR2_PACKAGE_NETWORK_MANAGER_MODEM_MANAGER=y
|
||||
BR2_PACKAGE_OPENSSH=y
|
||||
# BR2_PACKAGE_OPENSSH_SANDBOX is not set
|
||||
BR2_PACKAGE_WGET=y
|
||||
BR2_PACKAGE_WIRELESS_TOOLS=y
|
||||
BR2_PACKAGE_WPA_SUPPLICANT=y
|
||||
BR2_PACKAGE_WPA_SUPPLICANT_WEXT=y
|
||||
BR2_PACKAGE_WPA_SUPPLICANT_AP_SUPPORT=y
|
||||
BR2_PACKAGE_WPA_SUPPLICANT_MESH_NETWORKING=y
|
||||
BR2_PACKAGE_WPA_SUPPLICANT_AUTOSCAN=y
|
||||
BR2_PACKAGE_WPA_SUPPLICANT_HOTSPOT=y
|
||||
BR2_PACKAGE_WPA_SUPPLICANT_DEBUG_SYSLOG=y
|
||||
BR2_PACKAGE_WPA_SUPPLICANT_WPA3=y
|
||||
BR2_PACKAGE_WPA_SUPPLICANT_CLI=y
|
||||
BR2_PACKAGE_WPA_SUPPLICANT_WPA_CLIENT_SO=y
|
||||
BR2_PACKAGE_WPA_SUPPLICANT_PASSPHRASE=y
|
||||
BR2_PACKAGE_WPA_SUPPLICANT_DBUS=y
|
||||
BR2_PACKAGE_CATATONIT=y
|
||||
BR2_PACKAGE_FILE=y
|
||||
BR2_PACKAGE_GNUPG=y
|
||||
BR2_PACKAGE_SCREEN=y
|
||||
BR2_PACKAGE_TIME=y
|
||||
BR2_PACKAGE_TINI=y
|
||||
BR2_PACKAGE_WHICH=y
|
||||
BR2_PACKAGE_ACL=y
|
||||
BR2_PACKAGE_AUDIT=y
|
||||
BR2_PACKAGE_COREUTILS=y
|
||||
BR2_PACKAGE_COREUTILS_INDIVIDUAL_BINARIES=y
|
||||
BR2_PACKAGE_EFIBOOTMGR=y
|
||||
BR2_PACKAGE_HTOP=y
|
||||
BR2_PACKAGE_PODMAN=y
|
||||
BR2_PACKAGE_PODMAN_DRIVER_BTRFS=y
|
||||
BR2_PACKAGE_PODMAN_DRIVER_DEVICEMAPPER=y
|
||||
BR2_PACKAGE_PODMAN_DRIVER_VFS=y
|
||||
BR2_PACKAGE_PROCPS_NG=y
|
||||
BR2_PACKAGE_RSYSLOG=y
|
||||
BR2_PACKAGE_SHADOW=y
|
||||
BR2_PACKAGE_SHADOW_SHADOWGRP=y
|
||||
BR2_PACKAGE_SHADOW_ACCOUNT_TOOLS_SETUID=y
|
||||
BR2_PACKAGE_SHADOW_UTMPX=y
|
||||
BR2_PACKAGE_SHADOW_SUBORDINATE_IDS=y
|
||||
BR2_PACKAGE_SWUPDATE=y
|
||||
BR2_PACKAGE_SWUPDATE_CONFIG="$(BR2_EXTERNAL)/swupdate.config"
|
||||
BR2_PACKAGE_SWUPDATE_USB=y
|
||||
BR2_PACKAGE_SYSTEMD_ANALYZE=y
|
||||
BR2_PACKAGE_SYSTEMD_BACKLIGHT=y
|
||||
# BR2_PACKAGE_SYSTEMD_PSTORE is not set
|
||||
BR2_PACKAGE_SYSTEMD_FIRSTBOOT=y
|
||||
BR2_PACKAGE_SYSTEMD_HIBERNATE=y
|
||||
# BR2_PACKAGE_SYSTEMD_HWDB is not set
|
||||
BR2_PACKAGE_SYSTEMD_LOCALED=y
|
||||
BR2_PACKAGE_SYSTEMD_LOGIND=y
|
||||
# BR2_PACKAGE_SYSTEMD_NETWORKD is not set
|
||||
BR2_PACKAGE_SYSTEMD_OOMD=y
|
||||
BR2_PACKAGE_SYSTEMD_POLKIT=y
|
||||
BR2_PACKAGE_SYSTEMD_RANDOMSEED=y
|
||||
BR2_PACKAGE_SYSTEMD_REPART=y
|
||||
# BR2_PACKAGE_SYSTEMD_RESOLVED is not set
|
||||
BR2_PACKAGE_SYSTEMD_RFKILL=y
|
||||
# BR2_PACKAGE_SYSTEMD_VCONSOLE is not set
|
||||
BR2_PACKAGE_TAR=y
|
||||
BR2_PACKAGE_UTIL_LINUX_BINARIES=y
|
||||
BR2_PACKAGE_UTIL_LINUX_HWCLOCK=y
|
||||
BR2_PACKAGE_UTIL_LINUX_KILL=y
|
||||
BR2_PACKAGE_UTIL_LINUX_LOGGER=y
|
||||
BR2_PACKAGE_UTIL_LINUX_LOGIN=y
|
||||
BR2_PACKAGE_UTIL_LINUX_LSMEM=y
|
||||
BR2_PACKAGE_UTIL_LINUX_MESG=y
|
||||
BR2_PACKAGE_UTIL_LINUX_MORE=y
|
||||
BR2_PACKAGE_UTIL_LINUX_MOUNTPOINT=y
|
||||
BR2_PACKAGE_UTIL_LINUX_PARTX=y
|
||||
BR2_PACKAGE_UTIL_LINUX_PIVOT_ROOT=y
|
||||
BR2_PACKAGE_UTIL_LINUX_SU=y
|
||||
BR2_PACKAGE_UTIL_LINUX_SULOGIN=y
|
||||
BR2_PACKAGE_UTIL_LINUX_SWITCH_ROOT=y
|
||||
BR2_PACKAGE_UTIL_LINUX_ZRAMCTL=y
|
||||
BR2_PACKAGE_LESS=y
|
||||
BR2_PACKAGE_NANO=y
|
||||
BR2_PACKAGE_VIM=y
|
||||
BR2_TARGET_ROOTFS_SQUASHFS=y
|
||||
BR2_TARGET_ROOTFS_SQUASHFS4_LZO=y
|
||||
# BR2_TARGET_ROOTFS_TAR is not set
|
||||
BR2_TARGET_GRUB2=y
|
||||
BR2_TARGET_GRUB2_BUILTIN_MODULES_EFI="boot linux ext2 fat squash4 part_msdos part_gpt normal efi_gop regexp loadenv echo cat test configfile search search_fs_uuid all_video video font gfxmenu gfxterm gzio xzio"
|
||||
BR2_TARGET_GRUB2_INSTALL_TOOLS=y
|
||||
BR2_PACKAGE_HOST_DOSFSTOOLS=y
|
||||
BR2_PACKAGE_HOST_E2FSPROGS=y
|
||||
BR2_PACKAGE_HOST_GENIMAGE=y
|
||||
BR2_PACKAGE_HOST_MKPASSWD=y
|
||||
BR2_PACKAGE_HOST_MTOOLS=y
|
||||
BR2_PACKAGE_HOST_PKGCONF=y
|
||||
BR2_PACKAGE_BTSPEAKER=y
|
||||
BR2_PACKAGE_HOSTNAME_SERVICE=y
|
||||
BR2_PACKAGE_LIBGPIOD2=y
|
||||
BR2_PACKAGE_LIBGPIOD2_TOOLS=y
|
||||
BR2_PACKAGE_NCPAMIXER=y
|
||||
BR2_PACKAGE_OVOS_BUS_SERVER=y
|
||||
BR2_PACKAGE_OVOS_CONTAINERS=y
|
||||
BR2_PACKAGE_OVOS_CONTAINERS_ARCH="arm64"
|
||||
BR2_PACKAGE_OVOS_CONTAINERS_GUI=y
|
||||
BR2_PACKAGE_OVOS_SPLASH=y
|
||||
BR2_PACKAGE_RESPEAKER=y
|
||||
BR2_PACKAGE_RNNNOISE_LADSPA=y
|
||||
BR2_PACKAGE_ROC_TOOLKIT=y
|
||||
BR2_PACKAGE_RPI_EEPROM=y
|
||||
BR2_PACKAGE_RPI_EEPROM_RPI5=y
|
||||
BR2_PACKAGE_USERLAND_TOOLS=y
|
||||
BR2_PACKAGE_VOCALFUSION=y
|
||||
BR2_PACKAGE_WIFI_CONNECT=y
|
||||
BR2_PACKAGE_PYTHON_ADAFRUIT_BLINKA=y
|
||||
BR2_PACKAGE_PYTHON_SMBUS2=y
|
|
@ -1,8 +0,0 @@
|
|||
config BR2_PACKAGE_LIBCANBERRA
|
||||
bool "libcanberra"
|
||||
select BR2_PACKAGE_ALSA_LIB
|
||||
select BR2_PACKAGE_LIBVORBIS
|
||||
help
|
||||
Portable sound event library
|
||||
|
||||
http://0pointer.de/lennart/projects/libcanberra
|
|
@ -1,16 +0,0 @@
|
|||
#############################################################
|
||||
#
|
||||
# libcanberra
|
||||
#
|
||||
#############################################################
|
||||
|
||||
LIBCANBERRA_VERSION = 0.30
|
||||
LIBCANBERRA_SOURCE = libcanberra-$(LIBCANBERRA_VERSION).tar.xz
|
||||
LIBCANBERRA_SITE = http://0pointer.de/lennart/projects/libcanberra
|
||||
LIBCANBERRA_INSTALL_STAGING = YES
|
||||
LIBCANBERRA_DEPENDENCIES = libvorbis libtool alsa-lib
|
||||
LIBCANBERRA_CONF_OPTS += --disable-oss
|
||||
LIBCANBERRA_LICENSE = LGPLv2.1+
|
||||
LIBCANBERRA_LICENSE_FILES = LGPL
|
||||
|
||||
$(eval $(autotools-package))
|
|
@ -0,0 +1,27 @@
|
|||
config BR2_PACKAGE_LIBGPIOD2
|
||||
bool "libgpiod2"
|
||||
depends on BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_10
|
||||
depends on !BR2_PACKAGE_LIBGPIOD
|
||||
help
|
||||
This is a C library that abstracts the GPIO character
|
||||
device operations on linux.
|
||||
|
||||
https://git.kernel.org/pub/scm/libs/libgpiod/libgpiod.git/
|
||||
|
||||
This package is the continuation of the libgpiod package
|
||||
for versions 2.0 and above.
|
||||
|
||||
Note that a kernel of 5.10 or above is required for the
|
||||
ioctls to work.
|
||||
|
||||
if BR2_PACKAGE_LIBGPIOD2
|
||||
|
||||
config BR2_PACKAGE_LIBGPIOD2_TOOLS
|
||||
bool "install tools"
|
||||
help
|
||||
Include a set of command-line tools for managing GPIOs.
|
||||
|
||||
endif
|
||||
|
||||
comment "Consider upgrading to libgpiod2"
|
||||
depends on BR2_PACKAGE_LIBGPIOD
|
|
@ -0,0 +1,4 @@
|
|||
# From https://www.kernel.org/pub/software/libs/libgpiod/sha256sums.asc
|
||||
sha256 fa4024a080121c958502f9a46a5bda44bea85e7a4dd7fcb3dead463b6fc4261c libgpiod-2.1.tar.xz
|
||||
# Hash for license file
|
||||
sha256 eb17a56966db5d986bec449ee44ed61f01f9e3fafa952e527db67a8f9594fd11 COPYING
|
|
@ -0,0 +1,30 @@
|
|||
################################################################################
|
||||
#
|
||||
# libgpiod2
|
||||
#
|
||||
################################################################################
|
||||
|
||||
# Be careful when bumping versions.
|
||||
# Dependency on kernel header versions may change.
|
||||
LIBGPIOD2_VERSION = 2.1
|
||||
LIBGPIOD2_SOURCE = libgpiod-$(LIBGPIOD2_VERSION).tar.xz
|
||||
LIBGPIOD2_SITE = https://www.kernel.org/pub/software/libs/libgpiod
|
||||
LIBGPIOD2_LICENSE = LGPL-2.1+
|
||||
LIBGPIOD2_LICENSE_FILES = COPYING
|
||||
LIBGPIOD2_INSTALL_STAGING = YES
|
||||
LIBGPIOD2_DEPENDENCIES = host-pkgconf host-autoconf-archive
|
||||
LIBGPIOD2_CONF_OPTS = --disable-tests --disable-examples --disable-bindings-python
|
||||
|
||||
ifeq ($(BR2_PACKAGE_LIBGPIOD2_TOOLS),y)
|
||||
LIBGPIOD2_CONF_OPTS += --enable-tools
|
||||
else
|
||||
LIBGPIOD2_CONF_OPTS += --disable-tools
|
||||
endif
|
||||
|
||||
ifeq ($(BR2_INSTALL_LIBSTDCPP),y)
|
||||
LIBGPIOD2_CONF_OPTS += --enable-bindings-cxx
|
||||
else
|
||||
LIBGPIOD2_CONF_OPTS += --disable-bindings-cxx
|
||||
endif
|
||||
|
||||
$(eval $(autotools-package))
|
|
@ -9,8 +9,10 @@ OVOS_CONTAINERS_LICENSE = Apache License 2.0
|
|||
OVOS_CONTAINERS_LICENSE_FILES = $(BR2_EXTERNAL_OPENVOICEOS_PATH)/../LICENSE
|
||||
OVOS_CONTAINERS_SITE = $(BR2_EXTERNAL_OPENVOICEOS_PATH)/package/ovos-containers
|
||||
OVOS_CONTAINERS_SITE_METHOD = local
|
||||
#OVOS_CONTAINERS_DEPENDENCIES = host-skopeo host-podman host-jq
|
||||
|
||||
OVOS_CONTAINERS_IMAGES = ovos-phal \
|
||||
ovos-messagebus \
|
||||
ovos-listener-dinkum \
|
||||
ovos-audio \
|
||||
ovos-core \
|
||||
|
|
|
@ -1,11 +1,14 @@
|
|||
config BR2_PACKAGE_PYTHON_ADAFRUIT_BLINKA
|
||||
bool "python-adafruit-blinka"
|
||||
select BR2_PACKAGE_PYTHON_ADAFRUIT_CIRCUITPYTHON_TYPING # runtime
|
||||
select BR2_PACKAGE_PYTHON_ADAFRUIT_PLATFORMDETECT # runtime
|
||||
select BR2_PACKAGE_PYTHON_ADAFRUIT_PUREIO # runtime
|
||||
select BR2_PACKAGE_PYTHON_PYFTDI # runtime
|
||||
select BR2_PACKAGE_PYTHON_ADAFRUIT_CIRCUITPYTHON_TYPING
|
||||
select BR2_PACKAGE_PYTHON_ADAFRUIT_PLATFORMDETECT
|
||||
select BR2_PACKAGE_PYTHON_ADAFRUIT_PUREIO
|
||||
select BR2_PACKAGE_PYTHON_PYFTDI
|
||||
select BR2_PACKAGE_PYTHON_RPI_GPIO
|
||||
select BR2_PACKAGE_PYTHON_SYSV_IPC
|
||||
select BR2_PACKAGE_PYTHON_GPIOD
|
||||
help
|
||||
CircuitPython APIs for non-CircuitPython versions of Python
|
||||
such as CPython on Linux and MicroPython.
|
||||
CircuitPython APIs for non-CircuitPython versions of Python such as
|
||||
CPython on Linux and MicroPython.
|
||||
|
||||
https://github.com/adafruit/Adafruit_Blinka
|
||||
https://pypi.org/project/Adafruit-Blinka
|
|
@ -1,5 +1,5 @@
|
|||
# md5, sha256 from https://pypi.org/pypi/adafruit-blinka/json
|
||||
md5 b15a11eb7e0910af0d5825ed386b71d6 Adafruit-Blinka-8.6.0.tar.gz
|
||||
sha256 b05f03468edc898aa07af59bafa88ca78e1b50f7d263a53e6573ace0050f64eb Adafruit-Blinka-8.6.0.tar.gz
|
||||
md5 835cabd601befbe78dc64720f7efacd6 Adafruit-Blinka-8.31.0.tar.gz
|
||||
sha256 720edca821066022e912dffcb364ea04bd3e3f208132b975876a21b2a2daa850 Adafruit-Blinka-8.31.0.tar.gz
|
||||
# Locally computed sha256 checksums
|
||||
sha256 50e0c3b5b4486be0ed420639f8a1f6f115f29101feee6bcd954a4b81db04d0f3 LICENSE
|
||||
|
|
|
@ -4,11 +4,13 @@
|
|||
#
|
||||
################################################################################
|
||||
|
||||
PYTHON_ADAFRUIT_BLINKA_VERSION = 8.6.0
|
||||
PYTHON_ADAFRUIT_BLINKA_VERSION = 8.31.0
|
||||
PYTHON_ADAFRUIT_BLINKA_SOURCE = Adafruit-Blinka-$(PYTHON_ADAFRUIT_BLINKA_VERSION).tar.gz
|
||||
PYTHON_ADAFRUIT_BLINKA_SITE = https://files.pythonhosted.org/packages/76/29/541a6a22d923fbe0d4cf52f953a2c737370cb717f8df1cbd95ab97fe2fba
|
||||
PYTHON_ADAFRUIT_BLINKA_SITE = https://files.pythonhosted.org/packages/74/ed/e51689be726338ba16f2a88373ad4690702c5ddf8668be1b0289cb279840
|
||||
PYTHON_ADAFRUIT_BLINKA_SETUP_TYPE = setuptools
|
||||
PYTHON_ADAFRUIT_BLINKA_LICENSE = MIT
|
||||
PYTHON_ADAFRUIT_BLINKA_LICENSE_FILES = LICENSE
|
||||
PYTHON_ADAFRUIT_BLINKA_BIN_ARCH_EXCLUDE = usr/lib/python$(PYTHON3_VERSION_MAJOR)/site-packages/adafruit_blinka/microcontroller/bcm283x/pulseio
|
||||
PYTHON_ADAFRUIT_BLINKA_BIN_ARCH_EXCLUDE += usr/lib/python$(PYTHON3_VERSION_MAJOR)/site-packages/adafruit_blinka/microcontroller/amlogic/a311d/pulseio
|
||||
|
||||
$(eval $(python-package))
|
||||
|
|
|
@ -0,0 +1,6 @@
|
|||
config BR2_PACKAGE_PYTHON_ADAFRUIT_CIRCUITPYTHON_TYPING
|
||||
bool "python-adafruit-circuitpython-typing"
|
||||
help
|
||||
Types needed for type annotation that are not in `typing`
|
||||
|
||||
https://pypi.org/project/adafruit-circuitpython-typing
|
|
@ -0,0 +1,5 @@
|
|||
# md5, sha256 from https://pypi.org/pypi/adafruit-circuitpython-typing/json
|
||||
md5 3ff67f52cdb0ece5df86a477b1be5572 adafruit-circuitpython-typing-1.9.6.tar.gz
|
||||
sha256 dc69ed6362dcb890f7103d4da0db94b7d1849bc66804598d34508f413724d152 adafruit-circuitpython-typing-1.9.6.tar.gz
|
||||
# Locally computed sha256 checksums
|
||||
sha256 50e0c3b5b4486be0ed420639f8a1f6f115f29101feee6bcd954a4b81db04d0f3 LICENSE
|
|
@ -0,0 +1,14 @@
|
|||
################################################################################
|
||||
#
|
||||
# python-adafruit-circuitpython-typing
|
||||
#
|
||||
################################################################################
|
||||
|
||||
PYTHON_ADAFRUIT_CIRCUITPYTHON_TYPING_VERSION = 1.9.6
|
||||
PYTHON_ADAFRUIT_CIRCUITPYTHON_TYPING_SOURCE = adafruit-circuitpython-typing-$(PYTHON_ADAFRUIT_CIRCUITPYTHON_TYPING_VERSION).tar.gz
|
||||
PYTHON_ADAFRUIT_CIRCUITPYTHON_TYPING_SITE = https://files.pythonhosted.org/packages/c7/2e/acfeeed27e42cfcb0450bc4afe0746e4d8ddd5d9081b7d7cec01705149e1
|
||||
PYTHON_ADAFRUIT_CIRCUITPYTHON_TYPING_SETUP_TYPE = setuptools
|
||||
PYTHON_ADAFRUIT_CIRCUITPYTHON_TYPING_LICENSE = MIT
|
||||
PYTHON_ADAFRUIT_CIRCUITPYTHON_TYPING_LICENSE_FILES = LICENSE LICENSES/CC-BY-4.0.txt LICENSES/MIT.txt LICENSES/Unlicense.txt
|
||||
|
||||
$(eval $(python-package))
|
|
@ -1,5 +1,5 @@
|
|||
# md5, sha256 from https://pypi.org/pypi/Adafruit-PlatformDetect/json
|
||||
md5 7e7b10a48f6e6a7c650bb6bd432ec613 Adafruit-PlatformDetect-3.32.0.tar.gz
|
||||
sha256 31bad17fb91c3cd61bd62fb9712902bcef5225bbeb3c078a196c6d7e2d4599a4 Adafruit-PlatformDetect-3.32.0.tar.gz
|
||||
md5 4e80a7d7200a67d4528d580b16d3ca98 Adafruit-PlatformDetect-3.60.0.tar.gz
|
||||
sha256 644deb113c00ba1bfba4703fcd80cab52b5638d4a1146f2d58378df4af09746f Adafruit-PlatformDetect-3.60.0.tar.gz
|
||||
# Locally computed sha256 checksums
|
||||
sha256 50e0c3b5b4486be0ed420639f8a1f6f115f29101feee6bcd954a4b81db04d0f3 LICENSE
|
||||
|
|
|
@ -4,9 +4,9 @@
|
|||
#
|
||||
################################################################################
|
||||
|
||||
PYTHON_ADAFRUIT_PLATFORMDETECT_VERSION = 3.32.0
|
||||
PYTHON_ADAFRUIT_PLATFORMDETECT_VERSION = 3.60.0
|
||||
PYTHON_ADAFRUIT_PLATFORMDETECT_SOURCE = Adafruit-PlatformDetect-$(PYTHON_ADAFRUIT_PLATFORMDETECT_VERSION).tar.gz
|
||||
PYTHON_ADAFRUIT_PLATFORMDETECT_SITE = https://files.pythonhosted.org/packages/15/42/2192f64a9732878ddb39bb4359864d1398849e90f39f5591a23005e65d8e
|
||||
PYTHON_ADAFRUIT_PLATFORMDETECT_SITE = https://files.pythonhosted.org/packages/e5/e3/71ba7ff4cbcecf40783613c192bd0ec6c69a70053915567a998ce41050bc
|
||||
PYTHON_ADAFRUIT_PLATFORMDETECT_SETUP_TYPE = setuptools
|
||||
PYTHON_ADAFRUIT_PLATFORMDETECT_LICENSE = MIT
|
||||
PYTHON_ADAFRUIT_PLATFORMDETECT_LICENSE_FILES = LICENSE
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
# md5, sha256 from https://pypi.org/pypi/Adafruit-PureIO/json
|
||||
md5 f7d2f93db567333321b4097b4858bea5 Adafruit_PureIO-1.1.9.tar.gz
|
||||
sha256 2caf22fb07c7f771d83267f331a76cde314723f884a9570ea6f768730c87a879 Adafruit_PureIO-1.1.9.tar.gz
|
||||
md5 f9ddf83f2166ce69522a25f82d1fcdf7 Adafruit_PureIO-1.1.11.tar.gz
|
||||
sha256 c4cfbb365731942d1f1092a116f47dfdae0aef18c5b27f1072b5824ad5ea8c7c Adafruit_PureIO-1.1.11.tar.gz
|
||||
# Locally computed sha256 checksums
|
||||
sha256 aa5e54136c840ed2e333f65d43fecbc6c0e8fff62ebaece4ff281cd2a6672088 LICENSE
|
||||
|
|
|
@ -4,9 +4,9 @@
|
|||
#
|
||||
################################################################################
|
||||
|
||||
PYTHON_ADAFRUIT_PUREIO_VERSION = 1.1.9
|
||||
PYTHON_ADAFRUIT_PUREIO_VERSION = 1.1.11
|
||||
PYTHON_ADAFRUIT_PUREIO_SOURCE = Adafruit_PureIO-$(PYTHON_ADAFRUIT_PUREIO_VERSION).tar.gz
|
||||
PYTHON_ADAFRUIT_PUREIO_SITE = https://files.pythonhosted.org/packages/df/ca/9162d4648669d12af16d5a66d808bdef6967eb684cbed9b1a3ebc19b361a
|
||||
PYTHON_ADAFRUIT_PUREIO_SITE = https://files.pythonhosted.org/packages/e5/b7/f1672435116822079bbdab42163f9e6424769b7db778873d95d18c085230
|
||||
PYTHON_ADAFRUIT_PUREIO_SETUP_TYPE = setuptools
|
||||
PYTHON_ADAFRUIT_PUREIO_LICENSE = MIT
|
||||
PYTHON_ADAFRUIT_PUREIO_LICENSE_FILES = LICENSE
|
||||
|
|
|
@ -1,6 +0,0 @@
|
|||
config BR2_PACKAGE_PYTHON_BLINKER
|
||||
bool "python-blinker"
|
||||
help
|
||||
Fast, simple object-to-object and broadcast signaling.
|
||||
|
||||
http://pythonhosted.org/blinker/
|
|
@ -1,5 +0,0 @@
|
|||
# md5, sha256 from https://pypi.org/pypi/blinker/json
|
||||
md5 8b3722381f83c2813c52de3016b68d33 blinker-1.4.tar.gz
|
||||
sha256 471aee25f3992bd325afa3772f1063dbdbbca947a041b8b89466dc00d606f8b6 blinker-1.4.tar.gz
|
||||
# Locally computed sha256 checksums
|
||||
sha256 ee99a909e1b04f53f3d49383e6462ba268cf49388bb3a657455dac9e38cdf0ea LICENSE
|
|
@ -1,14 +0,0 @@
|
|||
################################################################################
|
||||
#
|
||||
# python-blinker
|
||||
#
|
||||
################################################################################
|
||||
|
||||
PYTHON_BLINKER_VERSION = 1.4
|
||||
PYTHON_BLINKER_SOURCE = blinker-$(PYTHON_BLINKER_VERSION).tar.gz
|
||||
PYTHON_BLINKER_SITE = https://files.pythonhosted.org/packages/1b/51/e2a9f3b757eb802f61dc1f2b09c8c99f6eb01cf06416c0671253536517b6
|
||||
PYTHON_BLINKER_SETUP_TYPE = setuptools
|
||||
PYTHON_BLINKER_LICENSE = MIT
|
||||
PYTHON_BLINKER_LICENSE_FILES = LICENSE
|
||||
|
||||
$(eval $(python-package))
|
|
@ -1,6 +0,0 @@
|
|||
config BR2_PACKAGE_PYTHON_CACHETOOLS
|
||||
bool "python-cachetools"
|
||||
help
|
||||
Extensible memoizing collections and decorators.
|
||||
|
||||
https://github.com/tkem/cachetools
|
|
@ -1,5 +0,0 @@
|
|||
# md5, sha256 from https://pypi.org/pypi/cachetools/json
|
||||
md5 aced22583c2ce8672f73e570e5430bd7 cachetools-2.1.0.tar.gz
|
||||
sha256 90f1d559512fc073483fe573ef5ceb39bf6ad3d39edc98dc55178a2b2b176fa3 cachetools-2.1.0.tar.gz
|
||||
# Locally computed sha256 checksums
|
||||
sha256 67aece1bc071b753da8a24bcf8953b0e7cd873780aeddce5990864822fdb734b LICENSE
|
|
@ -1,14 +0,0 @@
|
|||
################################################################################
|
||||
#
|
||||
# python-cachetools
|
||||
#
|
||||
################################################################################
|
||||
|
||||
PYTHON_CACHETOOLS_VERSION = 2.1.0
|
||||
PYTHON_CACHETOOLS_SOURCE = cachetools-$(PYTHON_CACHETOOLS_VERSION).tar.gz
|
||||
PYTHON_CACHETOOLS_SITE = https://files.pythonhosted.org/packages/87/41/b3e00059f3c34b57a653d2120d213715abb4327b36fee22e59c1da977d25
|
||||
PYTHON_CACHETOOLS_SETUP_TYPE = setuptools
|
||||
PYTHON_CACHETOOLS_LICENSE = MIT
|
||||
PYTHON_CACHETOOLS_LICENSE_FILES = LICENSE
|
||||
|
||||
$(eval $(python-package))
|
|
@ -1,10 +0,0 @@
|
|||
config BR2_PACKAGE_PYTHON_GOOGLE_AUTH
|
||||
bool "python-google-auth"
|
||||
select BR2_PACKAGE_PYTHON_PYASN1_MODULES # runtime
|
||||
select BR2_PACKAGE_PYTHON_RSA # runtime
|
||||
select BR2_PACKAGE_PYTHON_SIX # runtime
|
||||
select BR2_PACKAGE_PYTHON_CACHETOOLS # runtime
|
||||
help
|
||||
Google Authentication Library.
|
||||
|
||||
https://github.com/GoogleCloudPlatform/google-auth-library-python
|
|
@ -1,5 +0,0 @@
|
|||
# md5, sha256 from https://pypi.org/pypi/google-auth/json
|
||||
md5 d231e262e5e3bf835b1a118b6904a81c google-auth-1.5.1.tar.gz
|
||||
sha256 9ca363facbf2622d9ba828017536ccca2e0f58bd15e659b52f312172f8815530 google-auth-1.5.1.tar.gz
|
||||
# Locally computed sha256 checksums
|
||||
sha256 c71d239df91726fc519c6eb72d318ec65820627232b2f796219e87dcf35d0ab4 LICENSE
|
|
@ -1,14 +0,0 @@
|
|||
################################################################################
|
||||
#
|
||||
# python-google-auth
|
||||
#
|
||||
################################################################################
|
||||
|
||||
PYTHON_GOOGLE_AUTH_VERSION = 1.5.1
|
||||
PYTHON_GOOGLE_AUTH_SOURCE = google-auth-$(PYTHON_GOOGLE_AUTH_VERSION).tar.gz
|
||||
PYTHON_GOOGLE_AUTH_SITE = https://files.pythonhosted.org/packages/7e/cd/dae5c39974b040741215ed346263152c93af21a22dc124c7ad451fbee417
|
||||
PYTHON_GOOGLE_AUTH_SETUP_TYPE = setuptools
|
||||
PYTHON_GOOGLE_AUTH_LICENSE = Apache-2.0
|
||||
PYTHON_GOOGLE_AUTH_LICENSE_FILES = LICENSE
|
||||
|
||||
$(eval $(python-package))
|
|
@ -0,0 +1,14 @@
|
|||
config BR2_PACKAGE_PYTHON_GPIOD
|
||||
bool "python-gpiod"
|
||||
depends on !BR2_PACKAGE_LIBGPIOD
|
||||
help
|
||||
This is a C library that abstracts the GPIO character
|
||||
device operations on linux.
|
||||
|
||||
https://git.kernel.org/pub/scm/libs/libgpiod/libgpiod.git/
|
||||
|
||||
This package is the continuation of the libgpiod package
|
||||
for versions 2.0 and above.
|
||||
|
||||
Note that a kernel of 5.10 or above is required for the
|
||||
ioctls to work.
|
|
@ -0,0 +1,5 @@
|
|||
# md5, sha256 from https://pypi.org/pypi/gpiod/json
|
||||
md5 faf8736f9584a28426e4832fe22f38f4 gpiod-2.1.3.tar.gz
|
||||
sha256 a33193d6cab79d252329f71666a35a3668e04f1f82bf9b93ee2c9ae852398b20 gpiod-2.1.3.tar.gz
|
||||
# Locally computed sha256 checksums
|
||||
sha256 50e0c3b5b4486be0ed420639f8a1f6f115f29101feee6bcd954a4b81db04d0f3 LICENSE
|
|
@ -0,0 +1,13 @@
|
|||
################################################################################
|
||||
#
|
||||
# python-gpiod
|
||||
#
|
||||
################################################################################
|
||||
|
||||
PYTHON_GPIOD_VERSION = 2.1.3
|
||||
PYTHON_GPIOD_SOURCE = gpiod-$(PYTHON_GPIOD_VERSION).tar.gz
|
||||
PYTHON_GPIOD_SITE = https://files.pythonhosted.org/packages/a8/56/730573fe8d03c4d32a31e7182d27317b0cef298c9170b5a2994e2248986f
|
||||
PYTHON_GPIOD_SETUP_TYPE = setuptools
|
||||
#PYTHON_LIBGPIOD_DEPENDENCIES = libgpiod
|
||||
|
||||
$(eval $(python-package))
|
|
@ -1,6 +0,0 @@
|
|||
config BR2_PACKAGE_PYTHON_HUMANHASH3
|
||||
bool "python-humanhash3"
|
||||
help
|
||||
Human-readable representations of digests.
|
||||
|
||||
https://github.com/blag/humanhash
|
|
@ -1,3 +0,0 @@
|
|||
# md5, sha256 from https://pypi.org/pypi/humanhash3/json
|
||||
md5 c892640cca499ba5a83cfe152d295b9d humanhash3-0.0.6.tar.gz
|
||||
sha256 89ae15f6034bdb07e53ac2b2e246cc7131940766d2b2b70b7398dd27c640b1ab humanhash3-0.0.6.tar.gz
|
|
@ -1,13 +0,0 @@
|
|||
################################################################################
|
||||
#
|
||||
# python-humanhash3
|
||||
#
|
||||
################################################################################
|
||||
|
||||
PYTHON_HUMANHASH3_VERSION = 0.0.6
|
||||
PYTHON_HUMANHASH3_SOURCE = humanhash3-$(PYTHON_HUMANHASH3_VERSION).tar.gz
|
||||
PYTHON_HUMANHASH3_SITE = https://files.pythonhosted.org/packages/01/06/733ffbb45b78c34eba21d72e71a67f44af6efcdfb2e31ccaa837eb5144be
|
||||
PYTHON_HUMANHASH3_SETUP_TYPE = distutils
|
||||
PYTHON_HUMANHASH3_LICENSE = Public Domain
|
||||
|
||||
$(eval $(python-package))
|
|
@ -1,6 +0,0 @@
|
|||
config BR2_PACKAGE_PYTHON_MULTI_KEY_DICT
|
||||
bool "python-multi-key-dict"
|
||||
help
|
||||
Multi key dictionary implementation.
|
||||
|
||||
https://github.com/formiaczek/multi_key_dict
|
|
@ -1,3 +0,0 @@
|
|||
# md5, sha256 from https://pypi.org/pypi/multi-key-dict/json
|
||||
md5 fea179deaaf496872c9db77dab30d523 multi_key_dict-2.0.3.tar.gz
|
||||
sha256 deebdec17aa30a1c432cb3f437e81f8621e1c0542a0c0617a74f71e232e9939e multi_key_dict-2.0.3.tar.gz
|
|
@ -1,13 +0,0 @@
|
|||
################################################################################
|
||||
#
|
||||
# python-multi-key-dict
|
||||
#
|
||||
################################################################################
|
||||
|
||||
PYTHON_MULTI_KEY_DICT_VERSION = 2.0.3
|
||||
PYTHON_MULTI_KEY_DICT_SOURCE = multi_key_dict-$(PYTHON_MULTI_KEY_DICT_VERSION).tar.gz
|
||||
PYTHON_MULTI_KEY_DICT_SITE = https://files.pythonhosted.org/packages/6d/97/2e9c47ca1bbde6f09cb18feb887d5102e8eacd82fbc397c77b221f27a2ab
|
||||
PYTHON_MULTI_KEY_DICT_SETUP_TYPE = distutils
|
||||
PYTHON_MULTI_KEY_DICT_LICENSE = MIT
|
||||
|
||||
$(eval $(python-package))
|
|
@ -1,6 +0,0 @@
|
|||
config BR2_PACKAGE_PYTHON_PYEE
|
||||
bool "python-pyee"
|
||||
help
|
||||
A port of node.js's EventEmitter to python.
|
||||
|
||||
https://github.com/jfhbrook/pyee
|
|
@ -1,3 +0,0 @@
|
|||
# md5, sha256 from https://pypi.org/pypi/pyee/json
|
||||
md5 5e7dd623f031e8b22a9e1fa64bf00a5c pyee-5.0.0.tar.gz
|
||||
sha256 2770c4928abc721f46b705e6a72b0c59480c4a69c9a83ca0b00bb994f1ea4b32 pyee-9.0.4.tar.gz
|
|
@ -1,14 +0,0 @@
|
|||
################################################################################
|
||||
#
|
||||
# python-pyee
|
||||
#
|
||||
################################################################################
|
||||
|
||||
PYTHON_PYEE_VERSION = 9.0.4
|
||||
PYTHON_PYEE_SOURCE = pyee-$(PYTHON_PYEE_VERSION).tar.gz
|
||||
PYTHON_PYEE_SITE = https://files.pythonhosted.org/packages/99/d0/32803671d5d9dc032c766ad6c0716db98fa9b2c6ad9ec544f04849e9d3c7
|
||||
PYTHON_PYEE_SETUP_TYPE = distutils
|
||||
PYTHON_PYEE_LICENSE = MIT
|
||||
PYTHON_PYEE_DEPENDENCIES = host-python-pytest-runner
|
||||
|
||||
$(eval $(python-package))
|
|
@ -1,5 +1,5 @@
|
|||
# md5, sha256 from https://pypi.org/pypi/pyftdi/json
|
||||
md5 d8969beb9cd11c123f1249963bf8c0d8 pyftdi-0.54.0.tar.gz
|
||||
sha256 8df9af22077d17533d2f95b508b1d87959877627ea5dc2369056e90a3b5a232d pyftdi-0.54.0.tar.gz
|
||||
md5 fa9feda5b80db51d538ed9b98e25504e pyftdi-0.55.0.tar.gz
|
||||
sha256 a747bbbccc4eeea26cefa2c8bd3d2b8bef8c94ecb6969bb9c75a63640887519a pyftdi-0.55.0.tar.gz
|
||||
# Locally computed sha256 checksums
|
||||
sha256 7342c9ccf3ec21eee9a23c6c74af15fb08ac1b79ddbccb4e063ddeaa6ef7c52d pyftdi/doc/license.rst
|
||||
|
|
|
@ -4,9 +4,9 @@
|
|||
#
|
||||
################################################################################
|
||||
|
||||
PYTHON_PYFTDI_VERSION = 0.54.0
|
||||
PYTHON_PYFTDI_VERSION = 0.55.0
|
||||
PYTHON_PYFTDI_SOURCE = pyftdi-$(PYTHON_PYFTDI_VERSION).tar.gz
|
||||
PYTHON_PYFTDI_SITE = https://files.pythonhosted.org/packages/49/a3/6cd09c0493662b285b2ba87a08b1378a5b13e5cab44eb6a3f740c801c804
|
||||
PYTHON_PYFTDI_SITE = https://files.pythonhosted.org/packages/da/db/b900789a154e32dba50f132a2a76837331801f8b521b7e1bcbb852b01a35
|
||||
PYTHON_PYFTDI_SETUP_TYPE = setuptools
|
||||
PYTHON_PYFTDI_LICENSE = FIXME: please specify the exact BSD version
|
||||
PYTHON_PYFTDI_LICENSE_FILES = pyftdi/doc/license.rst
|
||||
|
|
|
@ -1,6 +0,0 @@
|
|||
config BR2_PACKAGE_PYTHON_PYMPLAYER
|
||||
bool "python-pymplayer"
|
||||
help
|
||||
mplayer python api.
|
||||
|
||||
https://github.com/JarbasAl/py_mplayer
|
|
@ -1,2 +0,0 @@
|
|||
# sha256 from https://pypi.org
|
||||
sha256 4e8e4581761fffdd8915829baf2b16b83265a6aa75455f1647667fdc8091bad2 python-pymplayer-eaa0a1dbfc60cb0f4f1b3e495d665714c089474a-br1.tar.gz
|
|
@ -1,13 +0,0 @@
|
|||
################################################################################
|
||||
#
|
||||
# python-pymplayer
|
||||
#
|
||||
################################################################################
|
||||
|
||||
PYTHON_PYMPLAYER_VERSION = eaa0a1dbfc60cb0f4f1b3e495d665714c089474a
|
||||
PYTHON_PYMPLAYER_SITE = https://github.com/JarbasAl/py_mplayer.git
|
||||
PYTHON_PYMPLAYER_SITE_METHOD = git
|
||||
PYTHON_PYMPLAYER_SETUP_TYPE = distutils
|
||||
PYTHON_PYMPLAYER_LICENSE = MIT
|
||||
|
||||
$(eval $(python-package))
|
|
@ -1,9 +0,0 @@
|
|||
config BR2_PACKAGE_PYTHON_PYOWM
|
||||
bool "python-pyowm"
|
||||
help
|
||||
PyOWM is a client Python wrapper library for the
|
||||
OpenWeatherMap web API. It allows quick and easy
|
||||
consumption of OWM weather data from Python applications
|
||||
via a simple object model and in a human-friendly fashion.
|
||||
|
||||
http://github.com/csparpa/pyowm
|
|
@ -1,2 +0,0 @@
|
|||
# sha256 from https://pypi.org/pypi/
|
||||
sha256 5d41bcc3b6169d3cc606bffe80945ab4b65578ed7818ef13db8e16d836845442 pyowm-2.6.1.tar.gz
|
|
@ -1,13 +0,0 @@
|
|||
################################################################################
|
||||
#
|
||||
# python-pyowm
|
||||
#
|
||||
################################################################################
|
||||
|
||||
PYTHON_PYOWM_VERSION = 2.6.1
|
||||
PYTHON_PYOWM_SOURCE = pyowm-$(PYTHON_PYOWM_VERSION).tar.gz
|
||||
PYTHON_PYOWM_SITE = https://files.pythonhosted.org/packages/3a/1b/94282ac9ea7f737a6eea9520fed026200b63853b3196392814506c456b00
|
||||
PYTHON_PYOWM_SETUP_TYPE = distutils
|
||||
PYTHON_PYOWM_LICENSE = MIT
|
||||
|
||||
$(eval $(python-package))
|
|
@ -1,6 +0,0 @@
|
|||
config BR2_PACKAGE_PYTHON_PYXDG
|
||||
bool "python-pyxdg"
|
||||
help
|
||||
PyXDG is a python library to access freedesktop.org standards..
|
||||
|
||||
https://freedesktop.org/wiki/Software/pyxdg/
|
|
@ -1,2 +0,0 @@
|
|||
# md5, sha256 from https://pypi.org/pypi/pyxdg/json
|
||||
sha256 fe2928d3f532ed32b39c32a482b54136fe766d19936afc96c8f00645f9da1a06 pyxdg-0.26.tar.gz
|
|
@ -1,12 +0,0 @@
|
|||
################################################################################
|
||||
#
|
||||
# python-pyxdg
|
||||
#
|
||||
################################################################################
|
||||
|
||||
PYTHON_PYXDG_VERSION = 0.26
|
||||
PYTHON_PYXDG_SOURCE = pyxdg-$(PYTHON_PYXDG_VERSION).tar.gz
|
||||
PYTHON_PYXDG_SITE = https://files.pythonhosted.org/packages/47/6e/311d5f22e2b76381719b5d0c6e9dc39cd33999adae67db71d7279a6d70f4
|
||||
PYTHON_PYXDG_SETUP_TYPE = distutils
|
||||
|
||||
$(eval $(python-package))
|
|
@ -1,5 +1,5 @@
|
|||
# md5, sha256 from https://pypi.org/pypi/smbus2/json
|
||||
md5 ea4bba25b43863aecd6ec33b2252fdae smbus2-0.4.1.tar.gz
|
||||
sha256 6276eb599b76c4e74372f2582d2282f03b4398f0da16bc996608e4f21557ca9b smbus2-0.4.1.tar.gz
|
||||
md5 ab83d83e9eb3bd1d0bef8d6fd64b1398 smbus2-0.4.3.tar.gz
|
||||
sha256 36f2288a8e1a363cb7a7b2244ec98d880eb5a728a2494ac9c71e9de7bf6a803a smbus2-0.4.3.tar.gz
|
||||
# Locally computed sha256 checksums
|
||||
sha256 6ee9cf18c3a75dd76fb549a4b607ae34eedc31a796c48157895e2ad28d66ce79 LICENSE
|
||||
|
|
|
@ -4,9 +4,9 @@
|
|||
#
|
||||
################################################################################
|
||||
|
||||
PYTHON_SMBUS2_VERSION = 0.4.1
|
||||
PYTHON_SMBUS2_VERSION = 0.4.3
|
||||
PYTHON_SMBUS2_SOURCE = smbus2-$(PYTHON_SMBUS2_VERSION).tar.gz
|
||||
PYTHON_SMBUS2_SITE = https://files.pythonhosted.org/packages/d9/33/787448c69603eec96af07d36f7ae3a7e3fce4020632eddb55152dc903233
|
||||
PYTHON_SMBUS2_SITE = https://files.pythonhosted.org/packages/98/17/9663936e52a348b3ad1c85e6ca6071d2abf00a5f64f2df50bec8dcca6e16
|
||||
PYTHON_SMBUS2_SETUP_TYPE = setuptools
|
||||
PYTHON_SMBUS2_LICENSE = MIT
|
||||
PYTHON_SMBUS2_LICENSE_FILES = LICENSE
|
||||
|
|
|
@ -1,6 +0,0 @@
|
|||
config BR2_PACKAGE_PYTHON_SOURCE
|
||||
bool "python-source"
|
||||
help
|
||||
A simple printer of source list.
|
||||
|
||||
http://www.cctv.com
|
|
@ -1,3 +0,0 @@
|
|||
# md5, sha256 from https://pypi.org/pypi/source/json
|
||||
md5 75cfced3e80a80e06e60a90b4118dfa5 source-1.2.0.zip
|
||||
sha256 c72a255f39264da1b495da33fd68ae026e4b6247f0da4fd0c1414d685be9bde0 source-1.2.0.zip
|
|
@ -1,18 +0,0 @@
|
|||
################################################################################
|
||||
#
|
||||
# python-source
|
||||
#
|
||||
################################################################################
|
||||
|
||||
PYTHON_SOURCE_VERSION = 1.2.0
|
||||
PYTHON_SOURCE_SOURCE = source-$(PYTHON_SOURCE_VERSION).zip
|
||||
PYTHON_SOURCE_SITE = https://files.pythonhosted.org/packages/cd/44/8dfdedc238dbab3abacebbe4f76308847af8ff71bee20c668326b7941f76
|
||||
PYTHON_SOURCE_SETUP_TYPE = distutils
|
||||
|
||||
define PYTHON_SOURCE_EXTRACT_CMDS
|
||||
$(UNZIP) -d $(@D) $(DL_DIR)/python-source/$(PYTHON_SOURCE_SOURCE)
|
||||
mv $(@D)/source-$(PYTHON_SOURCE_VERSION)/* $(@D)
|
||||
$(RM) -r $(@D)/source-$(PYTHON_SOURCE_VERSION)
|
||||
endef
|
||||
|
||||
$(eval $(python-package))
|
|
@ -1,8 +0,0 @@
|
|||
config BR2_PACKAGE_PYTHON_WHEEL
|
||||
bool "python-wheel"
|
||||
help
|
||||
This library is the reference implementation
|
||||
of the Python wheel packaging standard, as
|
||||
defined in PEP 427.
|
||||
|
||||
https://github.com/pypa/wheel
|
|
@ -1,2 +0,0 @@
|
|||
# sha256 from https://pypi.org/pypi/
|
||||
sha256 e2ef7239991699e3355d54f8e968a21bb940a1dbf34a4d226741e64462516fad wheel-0.37.0.tar.gz
|
|
@ -1,13 +0,0 @@
|
|||
################################################################################
|
||||
#
|
||||
# python-wheel
|
||||
#
|
||||
################################################################################
|
||||
|
||||
PYTHON_WHEEL_VERSION = 0.37.0
|
||||
PYTHON_WHEEL_SOURCE = wheel-$(PYTHON_WHEEL_VERSION).tar.gz
|
||||
PYTHON_WHEEL_SITE = https://files.pythonhosted.org/packages/4e/be/8139f127b4db2f79c8b117c80af56a3078cc4824b5b94250c7f81a70e03b
|
||||
PYTHON_WHEEL_SETUP_TYPE = setuptools
|
||||
|
||||
$(eval $(python-package))
|
||||
$(eval $(host-python-package))
|
|
@ -3,16 +3,16 @@
|
|||
# rpi-eeprom
|
||||
#
|
||||
#############################################################
|
||||
RPI_EEPROM_VERSION = 8855da988935f0c09ed4cc772103d4c5408a1afb
|
||||
RPI_EEPROM_VERSION = 36e58db5c2a2656e553441f4f48f32227809105d
|
||||
RPI_EEPROM_SITE = $(call github,raspberrypi,rpi-eeprom,$(RPI_EEPROM_VERSION))
|
||||
RPI_EEPROM_LICENSE = BSD-3-Clause
|
||||
RPI_EEPROM_LICENSE_FILES = LICENSE
|
||||
RPI_EEPROM_INSTALL_IMAGES = YES
|
||||
|
||||
ifeq ($(BR2_PACKAGE_RPI_EEPROM_RPI4),y)
|
||||
RPI_EEPROM_FIRMWARE_PATH = firmware-2711/stable/pieeprom-2023-05-11.bin
|
||||
RPI_EEPROM_FIRMWARE_PATH = firmware-2711/stable/pieeprom-2024-01-22.bin
|
||||
else ifeq ($(BR2_PACKAGE_RPI_EEPROM_RPI5),y) # Raspberry Pi 5
|
||||
RPI_EEPROM_FIRMWARE_PATH = firmware-2712/stable/pieeprom-2024-01-05.bin
|
||||
RPI_EEPROM_FIRMWARE_PATH = firmware-2712/stable/pieeprom-2024-02-16.bin
|
||||
endif
|
||||
|
||||
define RPI_EEPROM_BUILD_CMDS
|
||||
|
|
Binary file not shown.
|
@ -1,2 +1,2 @@
|
|||
# Locally computed
|
||||
sha256 88bec397f9bf2a6887efa39cb660d37ef1f08e2e378a81a1b88d3b14798e44da vocalfusion-cc7c690176416998ee6a918f439130224fa24699.tar.gz
|
||||
sha256 c974fd4a6eeac9ce676827ca617674ee43ad40c98c31e6dd0a878591467ecd69 vocalfusion-fdf7e4efbe3237d68eb0d00388e57b0c891366b3.tar.gz
|
||||
|
|
|
@ -4,7 +4,7 @@
|
|||
#
|
||||
################################################################################
|
||||
|
||||
VOCALFUSION_VERSION = cc7c690176416998ee6a918f439130224fa24699
|
||||
VOCALFUSION_VERSION = fdf7e4efbe3237d68eb0d00388e57b0c891366b3
|
||||
VOCALFUSION_SITE = $(call github,OpenVoiceOS,VocalFusionDriver,$(VOCALFUSION_VERSION))
|
||||
VOCALFUSION_MODULE_SUBDIRS = driver
|
||||
|
||||
|
|
|
@ -3,207 +3,246 @@
|
|||
# requires dtparam=spi=on in /boot/config.txt
|
||||
|
||||
"""
|
||||
This script configures the XVF3510 board in boot from SPI slave and load a
|
||||
binary file. It requires a bin file as input parameter.
|
||||
This script configures the XVF3510 board to boot from SPI slave and loads a
|
||||
binary file. It requires a bin file as an input parameter.
|
||||
"""
|
||||
|
||||
import sys
|
||||
import os
|
||||
import time
|
||||
import argparse
|
||||
import spidev
|
||||
import RPi.GPIO as GPIO
|
||||
from smbus import SMBus
|
||||
from smbus2 import SMBus
|
||||
import digitalio
|
||||
import busio
|
||||
from pathlib import Path
|
||||
import board
|
||||
from typing import Optional
|
||||
|
||||
if sys.version[0] != '3':
|
||||
print("Run this script with Python 3")
|
||||
# Global variables for GPIO pins
|
||||
BOOT_SEL_PIN = digitalio.DigitalInOut(board.D26) # GPIO pin used for boot selection (PIN 37)
|
||||
RST_N_PIN = digitalio.DigitalInOut(board.D27) # GPIO pin used for reset (PIN 13)
|
||||
I2C_ADDRESS = 0x2C # I2C address for the I/O expander. TODO: 0x20 was in original code, misstake?
|
||||
|
||||
if sys.version_info[0] < 3:
|
||||
print("This script requires Python 3.")
|
||||
sys.exit(1)
|
||||
|
||||
def bit_reversed_byte(byte_to_reverse):
|
||||
def bit_reversed_byte(byte_to_reverse: int) -> int:
|
||||
"""
|
||||
Function to reverse the bit-order of a byte
|
||||
Reverse the bits of a byte.
|
||||
|
||||
Args:
|
||||
byte_to_reverse: byte to process
|
||||
|
||||
Retruns:
|
||||
byte in reversed order
|
||||
"""
|
||||
return int('{:08b}'.format(byte_to_reverse)[::-1], 2)
|
||||
|
||||
def set_boot_sel():
|
||||
"""
|
||||
Function to set XVF3510 board in SPI slave boot mode
|
||||
|
||||
Args:
|
||||
None
|
||||
byte_to_reverse (int): The byte to reverse.
|
||||
|
||||
Returns:
|
||||
None
|
||||
int: The reversed byte.
|
||||
"""
|
||||
|
||||
bus = SMBus(1)
|
||||
|
||||
# reset BOOT_SEL
|
||||
bus.write_byte_data(0x20, 3, 0xFE)
|
||||
bus.write_byte_data(0x20, 7, 0xFF)
|
||||
|
||||
state = {}
|
||||
for i in [2, 6]:
|
||||
state[i] = bus.read_byte_data(0x20, i)
|
||||
|
||||
# start reset
|
||||
data_to_write = 0x00 | (state[2] & 0xDF)
|
||||
bus.write_byte_data(0x20, 2, data_to_write)
|
||||
data_to_write = 0x00 | (state[6] & 0xDF)
|
||||
bus.write_byte_data(0x20, 6, data_to_write)
|
||||
# set BOOT_SEL high
|
||||
data_to_write = 0x01
|
||||
bus.write_byte_data(0x20, 3, data_to_write)
|
||||
data_to_write = 0xFE
|
||||
bus.write_byte_data(0x20, 7, data_to_write)
|
||||
# stop reset
|
||||
data_to_write = 0x20 | (state[2] & 0xDF)
|
||||
bus.write_byte_data(0x20, 2, data_to_write)
|
||||
data_to_write = 0x20 | (state[6] & 0xDF)
|
||||
bus.write_byte_data(0x20, 6, data_to_write)
|
||||
return int("{:08b}".format(byte_to_reverse)[::-1], 2)
|
||||
|
||||
|
||||
|
||||
def send_image(bin_filename, verbose=False, max_spi_speed_mhz = 5, block_transfer_pause_ms = 1, direct = False, delay = False):
|
||||
def set_boot_sel() -> None:
|
||||
"""
|
||||
Function to send the given image to the device via SPI slave
|
||||
Set XVF3510 board in SPI slave boot mode using I2C to manipulate BOOT_SEL pin.
|
||||
"""
|
||||
try:
|
||||
with SMBus(1) as bus:
|
||||
# Reset BOOT_SEL to default
|
||||
bus.write_byte_data(I2C_ADDRESS, 3, 0xFE)
|
||||
bus.write_byte_data(I2C_ADDRESS, 7, 0xFF)
|
||||
|
||||
# Preserve other settings while manipulating BOOT_SEL
|
||||
state = {i: bus.read_byte_data(I2C_ADDRESS, i) for i in [2, 6]}
|
||||
|
||||
# Start reset sequence
|
||||
for i in [2, 6]:
|
||||
bus.write_byte_data(I2C_ADDRESS, i, 0x00 | (state[i] & 0xDF))
|
||||
# Set BOOT_SEL high
|
||||
bus.write_byte_data(I2C_ADDRESS, 3, 0x01)
|
||||
bus.write_byte_data(I2C_ADDRESS, 7, 0xFE)
|
||||
# End reset sequence
|
||||
for i in [2, 6]:
|
||||
bus.write_byte_data(I2C_ADDRESS, i, 0x20 | (state[i] & 0xDF))
|
||||
except Exception as e:
|
||||
print(f"Error setting BOOT_SEL via I2C: {e}")
|
||||
sys.exit(1)
|
||||
|
||||
|
||||
def send_image(
|
||||
bin_filename: str,
|
||||
verbose: bool = False,
|
||||
max_spi_speed_mhz: float = 5,
|
||||
block_transfer_pause_ms: float = 1,
|
||||
direct: bool = False,
|
||||
delay: bool = False,
|
||||
) -> None:
|
||||
"""
|
||||
Send the given image to the device via SPI slave.
|
||||
|
||||
Args:
|
||||
bin_filename: binary file containing the image to boot
|
||||
verbose: flag to print debug printouts
|
||||
direct: Use Pi GPIO outputs rather than the XVF3510 Pi HAT
|
||||
delay: Release BootSel early to delay startup on version 4.0.0 onwards
|
||||
|
||||
Returns:
|
||||
None
|
||||
bin_filename (str): Binary file name.
|
||||
verbose (bool, optional): Enable verbose output. Defaults to False.
|
||||
max_spi_speed_mhz (float, optional): Max SPI speed in MHz. Defaults to 5.
|
||||
block_transfer_pause_ms (float, optional): Pause between blocks in milliseconds. Defaults to 1.
|
||||
direct (bool, optional): Direct mode flag. Defaults to False.
|
||||
delay (bool, optional): Delay startup flag. Defaults to False.
|
||||
"""
|
||||
binary_size = Path(bin_filename).stat().st_size
|
||||
print(f'Read file "{bin_filename}" size: {binary_size} Bytes')
|
||||
|
||||
if direct:
|
||||
#setup GPIO
|
||||
GPIO.setmode(GPIO.BOARD)
|
||||
GPIO.setwarnings(False)
|
||||
BOOT_SEL_PIN.switch_to_input()
|
||||
RST_N_PIN.switch_to_output()
|
||||
RST_N_PIN.value=1
|
||||
|
||||
#boot_sel = 8
|
||||
#rst_n = 10
|
||||
'''
|
||||
Mycroft board update
|
||||
'''
|
||||
#GPIO.setmode(GPIO.BCM)
|
||||
|
||||
boot_sel = 37 #26 #= 25 # fix these numbers to be Wiring Pi
|
||||
rst_n = 13 #27 #= 2
|
||||
GPIO.setup(boot_sel, GPIO.IN) # Normally, the Pi should not drive this
|
||||
GPIO.setup(rst_n, GPIO.OUT, initial=GPIO.HIGH)
|
||||
|
||||
#setup SPI
|
||||
spi = spidev.SpiDev()
|
||||
bus_spi = 0
|
||||
device = 0
|
||||
spi.open(bus_spi, device)
|
||||
|
||||
#SPI Settings
|
||||
spi.max_speed_hz = int(max_spi_speed_mhz * 1000000)
|
||||
spi.mode = 0b00 #XMOS supports 00 or 11
|
||||
|
||||
spi_block_size = 4096 #Limitation in spidev and xfer2 doesn't work!
|
||||
spi = setup_spi(max_spi_speed_mhz)
|
||||
|
||||
if direct:
|
||||
GPIO.output(rst_n, 0)
|
||||
GPIO.setup(boot_sel, GPIO.OUT, initial=GPIO.HIGH)
|
||||
GPIO.output(rst_n, 1)
|
||||
RST_N_PIN.value=False
|
||||
BOOT_SEL_PIN.switch_to_output()
|
||||
BOOT_SEL_PIN.value=True
|
||||
RST_N_PIN.value=True
|
||||
else:
|
||||
set_boot_sel()
|
||||
|
||||
# Create a table to map byte values to their bit-reversed values
|
||||
reverse_table = [bit_reversed_byte(byte) for byte in range(256)]
|
||||
reverse_table = [bit_reversed_byte(byte) for byte in range(256)]
|
||||
|
||||
data = []
|
||||
with open(bin_filename, "rb") as f:
|
||||
bytes_read = f.read()
|
||||
data = list(bytes_read)
|
||||
binary_size = len(data)
|
||||
block_count = 0
|
||||
print('Read file "{0}" size: {1} Bytes'.format(args.bin_filename, binary_size))
|
||||
if binary_size % spi_block_size != 0:
|
||||
print("Warning - binary file not a multiple of {} - {} remainder".format( \
|
||||
spi_block_size, binary_size % spi_block_size))
|
||||
while binary_size > 0:
|
||||
block = [reverse_table[byte] for byte in data[:spi_block_size]]
|
||||
del data[:spi_block_size]
|
||||
binary_size = len(data)
|
||||
if verbose:
|
||||
print("Sending {} Bytes in block {} checksum 0x{:X}".format( \
|
||||
len(block), block_count, sum(block)))
|
||||
spi.xfer(block)
|
||||
try:
|
||||
with open(bin_filename, "rb") as f:
|
||||
data = list(f.read())
|
||||
except Exception as e:
|
||||
print(f"Error reading binary file: {e}")
|
||||
sys.exit(1)
|
||||
|
||||
if block_count == 0:
|
||||
#Long delay for PLL reboot
|
||||
time.sleep(0.1)
|
||||
send_data_over_spi(data, spi, reverse_table, verbose, block_transfer_pause_ms, direct, delay)
|
||||
|
||||
if delay:
|
||||
# release boot_sel early to prevent startup
|
||||
if direct:
|
||||
GPIO.setup(boot_sel, GPIO.IN)
|
||||
else:
|
||||
#bus = smbus.SMBus(1)
|
||||
bus = SMBus(1)
|
||||
data_to_write = 0xFE
|
||||
bus.write_byte_data(0x20, 3, data_to_write)
|
||||
data_to_write = 0xFF
|
||||
bus.write_byte_data(0x20, 7, data_to_write)
|
||||
|
||||
elif binary_size > 0:
|
||||
time.sleep(block_transfer_pause_ms / 1000)
|
||||
block_count += 1
|
||||
print("Sending complete")
|
||||
|
||||
if direct:
|
||||
GPIO.setup(boot_sel, GPIO.IN) # Once booted, the Pi should not need to drive boot_sel
|
||||
GPIO.setup(rst_n, GPIO.OUT, initial=GPIO.HIGH) # Once booted, the Pi should not need to drive reset
|
||||
#GPIO.cleanup()
|
||||
# Once booted, the Pi should not need to drive boot_sel and reset
|
||||
BOOT_SEL_PIN.switch_to_input()
|
||||
RST_N_PIN.value=True
|
||||
else:
|
||||
#bus = smbus.SMBus(1)
|
||||
bus = SMBus(1)
|
||||
|
||||
# reset BOOT_SEL
|
||||
data_to_write = 0xFE
|
||||
bus.write_byte_data(0x20, 3, data_to_write)
|
||||
data_to_write = 0xFF
|
||||
bus.write_byte_data(0x20, 7, data_to_write)
|
||||
# Reset BOOT_SEL to default state
|
||||
with SMBus(1) as bus:
|
||||
bus.write_byte_data(I2C_ADDRESS, 3, 0xFE)
|
||||
bus.write_byte_data(I2C_ADDRESS, 7, 0xFF)
|
||||
|
||||
|
||||
def setup_spi(max_spi_speed_mhz: float) -> busio.SPI:
|
||||
"""
|
||||
Set up the SPI bus.
|
||||
|
||||
Args:
|
||||
max_spi_speed_mhz (float): Max SPI speed in MHz.
|
||||
|
||||
Returns:
|
||||
busio.SPI: Configured SPI bus.
|
||||
"""
|
||||
spi = busio.SPI(board.SCLK, MOSI=board.MOSI, MISO=board.MISO)
|
||||
while not spi.try_lock():
|
||||
pass
|
||||
spi.configure(baudrate=max_spi_speed_mhz * 1_000_000)
|
||||
return spi
|
||||
|
||||
|
||||
def send_data_over_spi(
|
||||
data: list,
|
||||
spi: busio.SPI,
|
||||
reverse_table: list,
|
||||
verbose: bool,
|
||||
pause_ms: float,
|
||||
direct: bool,
|
||||
delay: bool,
|
||||
) -> None:
|
||||
"""
|
||||
Send data over SPI, handling block transfers and optional delays.
|
||||
|
||||
Args:
|
||||
data (list): Data to send.
|
||||
spi (busio.SPI): Configured SPI bus.
|
||||
reverse_table (list): Table of bit-reversed byte values.
|
||||
verbose (bool): Enable verbose output.
|
||||
pause_ms (float): Pause between blocks in milliseconds.
|
||||
direct (bool): Direct mode flag.
|
||||
delay (bool): Delay startup flag.
|
||||
"""
|
||||
spi_block_size = 4096
|
||||
block_count = 0
|
||||
total_data_length = len(data)
|
||||
for i in range(0, total_data_length, spi_block_size):
|
||||
block = [reverse_table[byte] for byte in data[i : i + spi_block_size]]
|
||||
if verbose:
|
||||
print(f"Sending {len(block)} Bytes in block {block_count} checksum 0x{sum(block):X}")
|
||||
spi.write(block)
|
||||
|
||||
# Update the remaining data length after each block transfer
|
||||
remaining_data_length = total_data_length - (i + len(block))
|
||||
handle_block_transfer(
|
||||
block_count, delay, direct, pause_ms, remaining_data_length
|
||||
)
|
||||
block_count += 1
|
||||
|
||||
|
||||
def handle_block_transfer(
|
||||
block_count: int, delay: bool, direct: bool, pause_ms: float, remaining_data_length: int
|
||||
) -> None:
|
||||
"""
|
||||
Handle specifics of block transfer, including initial delays and conditional logic for direct mode.
|
||||
|
||||
Args:
|
||||
block_count (int): Number of blocks sent.
|
||||
delay (bool): Delay startup flag.
|
||||
direct (bool): Direct mode flag.
|
||||
pause_ms (float): Pause between blocks in milliseconds.
|
||||
remaining_data_length (int): Length of remaining data to send.
|
||||
"""
|
||||
if block_count == 0:
|
||||
# Long delay for PLL reboot
|
||||
time.sleep(0.1)
|
||||
|
||||
if delay:
|
||||
# release boot_sel early to prevent startup
|
||||
if direct:
|
||||
# release boot_sel early to prevent startup
|
||||
BOOT_SEL_PIN.switch_to_input()
|
||||
else:
|
||||
# Reset BOOT_SEL to default state
|
||||
with SMBus(1) as bus:
|
||||
bus.write_byte_data(I2C_ADDRESS, 3, 0xFE)
|
||||
bus.write_byte_data(I2C_ADDRESS, 7, 0xFF)
|
||||
|
||||
elif remaining_data_length > 0:
|
||||
time.sleep(pause_ms / 1000)
|
||||
|
||||
|
||||
if __name__ == "__main__":
|
||||
start_time = time.time()
|
||||
parser = argparse.ArgumentParser(description='Load an image via SPI slave from an RPi')
|
||||
parser.add_argument('bin_filename', help='binary file name')
|
||||
parser.add_argument('--direct', action='store_true', \
|
||||
help='Use just direct GPIO outputs rather than using the XVF3510 Development Kit Pi HAT')
|
||||
parser.add_argument('--delay', action='store_true', \
|
||||
help='Delay xvf3510 device start. Release the BootSel pin early to prevent the XVF3510 (V4.0.0 onwards) from starting with the default I2S configuration. This gives AP a chance to configure and start the XVF3510 device.')
|
||||
parser.add_argument('--max-spi-speed-mhz', type=float, default=5, \
|
||||
help='Max SPI speed in MHz')
|
||||
parser.add_argument('--block-transfer-pause-ms', type=float, default=1, \
|
||||
help='pause between SPI transfers in milliseconds, default 1ms')
|
||||
parser.add_argument('--verbose', action='store_true', \
|
||||
help='print debug information')
|
||||
|
||||
parser = argparse.ArgumentParser(description="Load an image via SPI slave from an RPi")
|
||||
parser.add_argument("bin_filename", help="binary file name")
|
||||
parser.add_argument("--direct", action="store_true", help="Use direct GPIO outputs rather than the XVF3510 Development Kit Pi HAT")
|
||||
parser.add_argument("--delay", action="store_true", help="Delay xvf3510 device start")
|
||||
parser.add_argument("--max-spi-speed-mhz", type=float, default=5, help="Max SPI speed in MHz")
|
||||
parser.add_argument("--block-transfer-pause-ms", type=float, default=1, help="Pause between SPI transfers in milliseconds")
|
||||
parser.add_argument("--verbose", action="store_true", help="Print debug information")
|
||||
args = parser.parse_args()
|
||||
|
||||
if not Path(args.bin_filename).is_file():
|
||||
print("Error: input file {} not found".format(args.bin_filename))
|
||||
exit(1)
|
||||
|
||||
send_image(args.bin_filename, args.verbose, args.max_spi_speed_mhz, args.block_transfer_pause_ms, args.direct, args.delay)
|
||||
bin_path = Path(args.bin_filename)
|
||||
if not bin_path.is_file():
|
||||
print(f"Error: input file {bin_path} not found")
|
||||
sys.exit(1)
|
||||
|
||||
start_time = time.time()
|
||||
send_image(
|
||||
bin_path,
|
||||
args.verbose,
|
||||
args.max_spi_speed_mhz,
|
||||
args.block_transfer_pause_ms,
|
||||
args.direct,
|
||||
args.delay,
|
||||
)
|
||||
end_time = time.time()
|
||||
|
||||
BOOT_SEL_PIN.deinit()
|
||||
RST_N_PIN.deinit()
|
||||
|
||||
if args.verbose:
|
||||
print("Sending image took {:.3} seconds".format(end_time - start_time))
|
||||
print(f"Sending image took {end_time - start_time:.3f} seconds")
|
||||
|
||||
|
|
|
@ -1,73 +0,0 @@
|
|||
From 7eaacdbf00ec29931553384f914c229c6078582e Mon Sep 17 00:00:00 2001
|
||||
Message-Id: <7eaacdbf00ec29931553384f914c229c6078582e.1652945863.git.stefan@agner.ch>
|
||||
In-Reply-To: <184b6a054e04bb4c7fb4885a30d62314229dc551.1652945863.git.stefan@agner.ch>
|
||||
References: <184b6a054e04bb4c7fb4885a30d62314229dc551.1652945863.git.stefan@agner.ch>
|
||||
From: Stefan Agner <stefan@agner.ch>
|
||||
Date: Thu, 5 May 2022 15:46:51 +0200
|
||||
Subject: [PATCH] efidisk: pass buffers with higher alignment
|
||||
|
||||
Some devices report a IoAlign value of 2, however seem to require a
|
||||
buffer with higher alignment.
|
||||
|
||||
The UEFI specification is saying: "IoAlign values of 0 and 1 mean that
|
||||
the buffer can be placed anywhere in memory. Otherwise, IoAlign must
|
||||
be a power of 2, and the requirement is that the start address of a
|
||||
buffer must be evenly divisible by IoAlign with no remainder."
|
||||
|
||||
It seems that this got misinterpreted by some vendors assuming IoAlign
|
||||
is 2^IoAlign. There is also such a hint in an example in earlier
|
||||
versions of the Driver Writer's Guide:
|
||||
ScsiPassThruMode.IoAlign = 2; // Data must be alligned on 4-byte boundary
|
||||
|
||||
However, it is unsafe to just blindly align buffers by 2^IoAlign, as
|
||||
this would lead to an overflow for systems which use block size
|
||||
alignment (e.g. 512 bytes, for example U-Boot).
|
||||
|
||||
Ontop of that, some devices seem to report no alignment requirements
|
||||
but seem to read corrupt data or report read errors if the buffer is
|
||||
not aligned.
|
||||
|
||||
Work around by using an alignment of at least BlockSize (typically 512
|
||||
bytes) in any casea. Also make sure that IoAlign is still respected as
|
||||
per UEFI specification if a higher alignment than block size is
|
||||
requested.
|
||||
|
||||
Note: The problem has only noticed with compressed squashfs. It seems
|
||||
that ext4 (and presumably other file system drivers) pass buffers with
|
||||
a higher alignment already.
|
||||
|
||||
Acked-by: Heinrich Schuchardt <xypron.glpk@gmx.de>
|
||||
Signed-off-by: Stefan Agner <stefan@agner.ch>
|
||||
---
|
||||
grub-core/disk/efi/efidisk.c | 15 +++++++++++++--
|
||||
1 file changed, 13 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git a/grub-core/disk/efi/efidisk.c b/grub-core/disk/efi/efidisk.c
|
||||
index 9e20af70e..c6e37f131 100644
|
||||
--- a/grub-core/disk/efi/efidisk.c
|
||||
+++ b/grub-core/disk/efi/efidisk.c
|
||||
@@ -553,8 +553,19 @@ grub_efidisk_readwrite (struct grub_disk *disk, grub_disk_addr_t sector,
|
||||
d = disk->data;
|
||||
bio = d->block_io;
|
||||
|
||||
- /* Set alignment to 1 if 0 specified */
|
||||
- io_align = bio->media->io_align ? bio->media->io_align : 1;
|
||||
+ /*
|
||||
+ * If IoAlign is > 1, it should represent the required alignment. However,
|
||||
+ * some UEFI implementation on Intel NUC systems seem to use IoAlign=2 but
|
||||
+ * require 2^IoAlign. Some implementation seem to require alignment despite
|
||||
+ * not reporting any requirements.
|
||||
+ *
|
||||
+ * Make sure to align to at least block size in any case.
|
||||
+ */
|
||||
+ if (bio->media->io_align < bio->media->block_size)
|
||||
+ io_align = bio->media->block_size;
|
||||
+ else
|
||||
+ io_align = bio->media->io_align;
|
||||
+
|
||||
num_bytes = size << disk->log_sector_size;
|
||||
|
||||
if ((grub_addr_t) buf & (io_align - 1))
|
||||
--
|
||||
2.36.1
|
||||
|
|
@ -1,7 +1,7 @@
|
|||
From 71103fe2c85e989e7b5374cead80c0d75425f1de Mon Sep 17 00:00:00 2001
|
||||
From f75402b89331eb0888900ae15fe7a8ec08564e90 Mon Sep 17 00:00:00 2001
|
||||
From: Peter Zijlstra <peterz@infradead.org>
|
||||
Date: Fri, 8 Sep 2023 18:22:48 +0200
|
||||
Subject: [PATCH 001/195] sched: Constrain locks in sched_submit_work()
|
||||
Subject: [PATCH 001/196] sched: Constrain locks in sched_submit_work()
|
||||
|
||||
Even though sched_submit_work() is ran from preemptible context,
|
||||
it is discouraged to have it use blocking locks due to the recursion
|
||||
|
@ -50,5 +50,5 @@ index a854b71836dd..a9bf40d18cec 100644
|
|||
|
||||
static void sched_update_worker(struct task_struct *tsk)
|
||||
--
|
||||
2.43.0
|
||||
2.43.2
|
||||
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
From 30c0fabb5665235a7e6dd945be69945e9c6dc069 Mon Sep 17 00:00:00 2001
|
||||
From ac013e45d292b1339ee9da48307bc36e860e075e Mon Sep 17 00:00:00 2001
|
||||
From: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
|
||||
Date: Fri, 8 Sep 2023 18:22:49 +0200
|
||||
Subject: [PATCH 002/195] locking/rtmutex: Avoid unconditional slowpath for
|
||||
Subject: [PATCH 002/196] locking/rtmutex: Avoid unconditional slowpath for
|
||||
DEBUG_RT_MUTEXES
|
||||
|
||||
With DEBUG_RT_MUTEXES enabled the fast-path rt_mutex_cmpxchg_acquire()
|
||||
|
@ -82,5 +82,5 @@ index d1473c624105..c7196de838ed 100644
|
|||
ww_mutex_set_context_fastpath(lock, ww_ctx);
|
||||
return 0;
|
||||
--
|
||||
2.43.0
|
||||
2.43.2
|
||||
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
From 67e70cee63df0dcf79656f4902fb1a563a9bd28f Mon Sep 17 00:00:00 2001
|
||||
From 441d37212b3185e39a4eba30acb9f2aefc8f157a Mon Sep 17 00:00:00 2001
|
||||
From: Thomas Gleixner <tglx@linutronix.de>
|
||||
Date: Fri, 8 Sep 2023 18:22:50 +0200
|
||||
Subject: [PATCH 003/195] sched: Extract __schedule_loop()
|
||||
Subject: [PATCH 003/196] sched: Extract __schedule_loop()
|
||||
|
||||
There are currently two implementations of this basic __schedule()
|
||||
loop, and there is soon to be a third.
|
||||
|
@ -59,5 +59,5 @@ index a9bf40d18cec..ed5f5e3f6239 100644
|
|||
NOKPROBE_SYMBOL(schedule_rtlock);
|
||||
#endif
|
||||
--
|
||||
2.43.0
|
||||
2.43.2
|
||||
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
From 9e47eb505e7f3ed5408d3d66e91ebb6982768023 Mon Sep 17 00:00:00 2001
|
||||
From a8e46d57627a4d965d528b7ba8ed107d500257f6 Mon Sep 17 00:00:00 2001
|
||||
From: Peter Zijlstra <peterz@infradead.org>
|
||||
Date: Fri, 8 Sep 2023 18:22:51 +0200
|
||||
Subject: [PATCH 004/195] sched: Provide rt_mutex specific scheduler helpers
|
||||
Subject: [PATCH 004/196] sched: Provide rt_mutex specific scheduler helpers
|
||||
|
||||
With PREEMPT_RT there is a rt_mutex recursion problem where
|
||||
sched_submit_work() can use an rtlock (aka spinlock_t). More
|
||||
|
@ -133,5 +133,5 @@ index ed5f5e3f6239..90f9124ac027 100644
|
|||
{
|
||||
if (pi_task)
|
||||
--
|
||||
2.43.0
|
||||
2.43.2
|
||||
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
From be4c4dd6d8b7daa71457f2d02eead010dc5b77b5 Mon Sep 17 00:00:00 2001
|
||||
From 1516b657591d065dbad2dbcd031a419802536191 Mon Sep 17 00:00:00 2001
|
||||
From: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
|
||||
Date: Fri, 8 Sep 2023 18:22:52 +0200
|
||||
Subject: [PATCH 005/195] locking/rtmutex: Use rt_mutex specific scheduler
|
||||
Subject: [PATCH 005/196] locking/rtmutex: Use rt_mutex specific scheduler
|
||||
helpers
|
||||
|
||||
Have rt_mutex use the rt_mutex specific scheduler helpers to avoid
|
||||
|
@ -187,5 +187,5 @@ index 48a19ed8486d..842037b2ba54 100644
|
|||
/*
|
||||
* The common functions which get wrapped into the rwlock API.
|
||||
--
|
||||
2.43.0
|
||||
2.43.2
|
||||
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
From beef31a7b4f8b038bfd4490f654df84668b806dc Mon Sep 17 00:00:00 2001
|
||||
From 6e0ef4c9025663e48a28d0f9f37117f7468884b9 Mon Sep 17 00:00:00 2001
|
||||
From: Thomas Gleixner <tglx@linutronix.de>
|
||||
Date: Fri, 8 Sep 2023 18:22:53 +0200
|
||||
Subject: [PATCH 006/195] locking/rtmutex: Add a lockdep assert to catch
|
||||
Subject: [PATCH 006/196] locking/rtmutex: Add a lockdep assert to catch
|
||||
potential nested blocking
|
||||
|
||||
There used to be a BUG_ON(current->pi_blocked_on) in the lock acquisition
|
||||
|
@ -62,5 +62,5 @@ index 842037b2ba54..38e292454fcc 100644
|
|||
rtlock_slowlock(rtm);
|
||||
}
|
||||
--
|
||||
2.43.0
|
||||
2.43.2
|
||||
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
From 067017a07e06c6ab7a99d0a9da097d3cdbc07d74 Mon Sep 17 00:00:00 2001
|
||||
From c727d5f5dcbe3a30ed56920957f32cade3dfd2cf Mon Sep 17 00:00:00 2001
|
||||
From: Peter Zijlstra <peterz@infradead.org>
|
||||
Date: Fri, 15 Sep 2023 17:19:44 +0200
|
||||
Subject: [PATCH 007/195] futex/pi: Fix recursive rt_mutex waiter state
|
||||
Subject: [PATCH 007/196] futex/pi: Fix recursive rt_mutex waiter state
|
||||
|
||||
Some new assertions pointed out that the existing code has nested rt_mutex wait
|
||||
state in the futex code.
|
||||
|
@ -200,5 +200,5 @@ index cba8b1a6a4cc..4c73e0b81acc 100644
|
|||
/*
|
||||
* Fixup the pi_state owner and possibly acquire the lock if we
|
||||
--
|
||||
2.43.0
|
||||
2.43.2
|
||||
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
From 854cc4a6294ebc631fceda57138d1419977e9c87 Mon Sep 17 00:00:00 2001
|
||||
From ed5e3fcceec56a9401a00bfdd6e2545e064ea774 Mon Sep 17 00:00:00 2001
|
||||
From: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
|
||||
Date: Thu, 3 Aug 2023 12:09:31 +0200
|
||||
Subject: [PATCH 008/195] signal: Add proper comment about the preempt-disable
|
||||
Subject: [PATCH 008/196] signal: Add proper comment about the preempt-disable
|
||||
in ptrace_stop().
|
||||
|
||||
Commit 53da1d9456fe7 ("fix ptrace slowness") added a preempt-disable section
|
||||
|
@ -48,5 +48,5 @@ index 09019017d669..051ed8114cd4 100644
|
|||
preempt_disable();
|
||||
read_unlock(&tasklist_lock);
|
||||
--
|
||||
2.43.0
|
||||
2.43.2
|
||||
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
From 819c398c8fc580efa6af71d8880e57d762c7b53a Mon Sep 17 00:00:00 2001
|
||||
From b9cc1762c1cb78dc3ea579526c2810aaa5095b76 Mon Sep 17 00:00:00 2001
|
||||
From: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
|
||||
Date: Thu, 3 Aug 2023 12:09:32 +0200
|
||||
Subject: [PATCH 009/195] signal: Don't disable preemption in ptrace_stop() on
|
||||
Subject: [PATCH 009/196] signal: Don't disable preemption in ptrace_stop() on
|
||||
PREEMPT_RT.
|
||||
|
||||
On PREEMPT_RT keeping preemption disabled during the invocation of
|
||||
|
@ -49,5 +49,5 @@ index 051ed8114cd4..b71026341056 100644
|
|||
cgroup_leave_frozen(true);
|
||||
|
||||
--
|
||||
2.43.0
|
||||
2.43.2
|
||||
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
From beec053e6c4b3efcfb0c71e5594de0df4651d6f8 Mon Sep 17 00:00:00 2001
|
||||
From 940963fd380191ddc53a1519e9a43e9f64acff7d Mon Sep 17 00:00:00 2001
|
||||
From: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
|
||||
Date: Thu, 21 Sep 2023 16:15:12 +0200
|
||||
Subject: [PATCH 010/195] drm/amd/display: Remove migrate_en/dis from
|
||||
Subject: [PATCH 010/196] drm/amd/display: Remove migrate_en/dis from
|
||||
dc_fpu_begin().
|
||||
|
||||
This is a revert of the commit mentioned below while it is not wrong, as
|
||||
|
@ -87,5 +87,5 @@ index 172aa10a8800..86f4c0e04654 100644
|
|||
if (cpu_has_feature(CPU_FTR_VSX_COMP)) {
|
||||
disable_kernel_vsx();
|
||||
--
|
||||
2.43.0
|
||||
2.43.2
|
||||
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
From 13345b6e1dccf7f0404111eb4081834eaf628563 Mon Sep 17 00:00:00 2001
|
||||
From 5a4030acca5d80c89c7c5d456ce6d368c8b06c3d Mon Sep 17 00:00:00 2001
|
||||
From: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
|
||||
Date: Thu, 21 Sep 2023 16:15:13 +0200
|
||||
Subject: [PATCH 011/195] drm/amd/display: Simplify the per-CPU usage.
|
||||
Subject: [PATCH 011/196] drm/amd/display: Simplify the per-CPU usage.
|
||||
|
||||
The fpu_recursion_depth counter is used to ensure that dc_fpu_begin()
|
||||
can be invoked multiple times while the FPU-disable function itself is
|
||||
|
@ -128,5 +128,5 @@ index 86f4c0e04654..8bd5926b47e0 100644
|
|||
+ preempt_enable();
|
||||
}
|
||||
--
|
||||
2.43.0
|
||||
2.43.2
|
||||
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
From 533bd452afe45e25b387a11ab7748f9633995fee Mon Sep 17 00:00:00 2001
|
||||
From 571a36167db85f02eee543494804642690368288 Mon Sep 17 00:00:00 2001
|
||||
From: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
|
||||
Date: Thu, 21 Sep 2023 16:15:14 +0200
|
||||
Subject: [PATCH 012/195] drm/amd/display: Add a warning if the FPU is used
|
||||
Subject: [PATCH 012/196] drm/amd/display: Add a warning if the FPU is used
|
||||
outside from task context.
|
||||
|
||||
Add a warning if the FPU is used from any context other than task
|
||||
|
@ -27,5 +27,5 @@ index 8bd5926b47e0..4ae4720535a5 100644
|
|||
depth = __this_cpu_inc_return(fpu_recursion_depth);
|
||||
|
||||
--
|
||||
2.43.0
|
||||
2.43.2
|
||||
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
From 7c34575c85d40e203f3b18ccb63e526d978b1c78 Mon Sep 17 00:00:00 2001
|
||||
From ac9bf004c54c34415488830ec5cbdd2c85a77619 Mon Sep 17 00:00:00 2001
|
||||
From: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
|
||||
Date: Thu, 21 Sep 2023 16:15:15 +0200
|
||||
Subject: [PATCH 013/195] drm/amd/display: Move the memory allocation out of
|
||||
Subject: [PATCH 013/196] drm/amd/display: Move the memory allocation out of
|
||||
dcn21_validate_bandwidth_fp().
|
||||
|
||||
dcn21_validate_bandwidth_fp() is invoked while FPU access has been
|
||||
|
@ -92,5 +92,5 @@ index c51badf7b68a..a81a0b9e6884 100644
|
|||
|
||||
void dcn21_clk_mgr_set_bw_params_wm_table(struct clk_bw_params *bw_params);
|
||||
--
|
||||
2.43.0
|
||||
2.43.2
|
||||
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
From bf3d7bb0ed627ca816eb490b7ac2b26ec02e63d5 Mon Sep 17 00:00:00 2001
|
||||
From 3f2c3255ff61a58382c5a9ade34c950b92fa2a10 Mon Sep 17 00:00:00 2001
|
||||
From: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
|
||||
Date: Thu, 21 Sep 2023 16:15:16 +0200
|
||||
Subject: [PATCH 014/195] drm/amd/display: Move the memory allocation out of
|
||||
Subject: [PATCH 014/196] drm/amd/display: Move the memory allocation out of
|
||||
dcn20_validate_bandwidth_fp().
|
||||
|
||||
dcn20_validate_bandwidth_fp() is invoked while FPU access has been
|
||||
|
@ -126,5 +126,5 @@ index a81a0b9e6884..b6c34198ddc8 100644
|
|||
struct pp_smu_wm_range_sets *ranges,
|
||||
struct _vcs_dpi_soc_bounding_box_st *loaded_bb);
|
||||
--
|
||||
2.43.0
|
||||
2.43.2
|
||||
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
From 30de1da993f600f4771b3f3724ce0667f66ac69b Mon Sep 17 00:00:00 2001
|
||||
From 1ae5a33601b65a31467bdb074b566d48296b1359 Mon Sep 17 00:00:00 2001
|
||||
From: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
|
||||
Date: Mon, 15 Aug 2022 17:29:50 +0200
|
||||
Subject: [PATCH 015/195] net: Avoid the IPI to free the
|
||||
Subject: [PATCH 015/196] net: Avoid the IPI to free the
|
||||
|
||||
skb_attempt_defer_free() collects a skbs, which was allocated on a
|
||||
remote CPU, on a per-CPU list. These skbs are either freed on that
|
||||
|
@ -40,7 +40,7 @@ index b8e60a20416b..ffa5248a90e2 100644
|
|||
|
||||
static inline void input_queue_head_incr(struct softnet_data *sd)
|
||||
diff --git a/net/core/dev.c b/net/core/dev.c
|
||||
index e480afb50d4c..227338b8cda8 100644
|
||||
index d72a4ff689ca..3c08e3dd115b 100644
|
||||
--- a/net/core/dev.c
|
||||
+++ b/net/core/dev.c
|
||||
@@ -4705,15 +4705,6 @@ static void rps_trigger_softirq(void *data)
|
||||
|
@ -92,7 +92,7 @@ index e480afb50d4c..227338b8cda8 100644
|
|||
static int napi_threaded_poll(void *data)
|
||||
{
|
||||
struct napi_struct *napi = data;
|
||||
@@ -11606,7 +11623,11 @@ static int __init net_dev_init(void)
|
||||
@@ -11615,7 +11632,11 @@ static int __init net_dev_init(void)
|
||||
INIT_CSD(&sd->csd, rps_trigger_softirq, sd);
|
||||
sd->cpu = i;
|
||||
#endif
|
||||
|
@ -124,5 +124,5 @@ index 011d69029112..9a9fbe18bf2f 100644
|
|||
|
||||
static void skb_splice_csum_page(struct sk_buff *skb, struct page *page,
|
||||
--
|
||||
2.43.0
|
||||
2.43.2
|
||||
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
From c17f2c393b160199e64c464189661283345d2e73 Mon Sep 17 00:00:00 2001
|
||||
From d312cf65a294c2b7b473cb487f8bda3161b9d72d Mon Sep 17 00:00:00 2001
|
||||
From: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
|
||||
Date: Wed, 7 Aug 2019 18:15:38 +0200
|
||||
Subject: [PATCH 016/195] x86: Allow to enable RT
|
||||
Subject: [PATCH 016/196] x86: Allow to enable RT
|
||||
|
||||
Allow to select RT.
|
||||
|
||||
|
@ -24,5 +24,5 @@ index fe3292e310d4..984068efd48b 100644
|
|||
select HAVE_ARCH_SOFT_DIRTY
|
||||
select MODULES_USE_ELF_RELA
|
||||
--
|
||||
2.43.0
|
||||
2.43.2
|
||||
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
From 44e5f60ede7f2407fe12fa477b09f1a156e0634b Mon Sep 17 00:00:00 2001
|
||||
From 06505d443d8b5674ebf4577ce6f372c939a36998 Mon Sep 17 00:00:00 2001
|
||||
From: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
|
||||
Date: Thu, 7 Nov 2019 17:49:20 +0100
|
||||
Subject: [PATCH 017/195] x86: Enable RT also on 32bit
|
||||
Subject: [PATCH 017/196] x86: Enable RT also on 32bit
|
||||
|
||||
Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
|
||||
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
|
||||
|
@ -30,5 +30,5 @@ index 984068efd48b..1b445e289190 100644
|
|||
select ARCH_USE_MEMTEST
|
||||
select ARCH_USE_QUEUED_RWLOCKS
|
||||
--
|
||||
2.43.0
|
||||
2.43.2
|
||||
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
From f4ac796216884ec5942d1d74fde86d1ed5f1f695 Mon Sep 17 00:00:00 2001
|
||||
From a52edbca61751c78ec7f0a0d386c726f3ed609cd Mon Sep 17 00:00:00 2001
|
||||
From: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
|
||||
Date: Tue, 1 Aug 2023 17:26:48 +0200
|
||||
Subject: [PATCH 018/195] sched/rt: Don't try push tasks if there are none.
|
||||
Subject: [PATCH 018/196] sched/rt: Don't try push tasks if there are none.
|
||||
|
||||
I have a RT task X at a high priority and cyclictest on each CPU with
|
||||
lower priority than X's. If X is active and each CPU wakes their own
|
||||
|
@ -59,5 +59,5 @@ index 904dd8534597..563161845e79 100644
|
|||
rd->rto_cpu = -1;
|
||||
|
||||
--
|
||||
2.43.0
|
||||
2.43.2
|
||||
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
From ddbe9f49b78c945704d68bd7333b354b13527703 Mon Sep 17 00:00:00 2001
|
||||
From 196e6be48c3feb1e5c17c651431b96dd16377788 Mon Sep 17 00:00:00 2001
|
||||
From: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
|
||||
Date: Wed, 1 Dec 2021 17:41:09 +0100
|
||||
Subject: [PATCH 019/195] softirq: Use a dedicated thread for timer wakeups.
|
||||
Subject: [PATCH 019/196] softirq: Use a dedicated thread for timer wakeups.
|
||||
|
||||
A timer/hrtimer softirq is raised in-IRQ context. With threaded
|
||||
interrupts enabled or on PREEMPT_RT this leads to waking the ksoftirqd
|
||||
|
@ -194,10 +194,10 @@ index 210cf5f8d92c..c29c30106eb8 100644
|
|||
}
|
||||
early_initcall(spawn_ksoftirqd);
|
||||
diff --git a/kernel/time/hrtimer.c b/kernel/time/hrtimer.c
|
||||
index 760793998cdd..9f4d7ab03e39 100644
|
||||
index edb0f821dcea..a7290012179a 100644
|
||||
--- a/kernel/time/hrtimer.c
|
||||
+++ b/kernel/time/hrtimer.c
|
||||
@@ -1808,7 +1808,7 @@ void hrtimer_interrupt(struct clock_event_device *dev)
|
||||
@@ -1809,7 +1809,7 @@ void hrtimer_interrupt(struct clock_event_device *dev)
|
||||
if (!ktime_before(now, cpu_base->softirq_expires_next)) {
|
||||
cpu_base->softirq_expires_next = KTIME_MAX;
|
||||
cpu_base->softirq_activated = 1;
|
||||
|
@ -206,7 +206,7 @@ index 760793998cdd..9f4d7ab03e39 100644
|
|||
}
|
||||
|
||||
__hrtimer_run_queues(cpu_base, now, flags, HRTIMER_ACTIVE_HARD);
|
||||
@@ -1921,7 +1921,7 @@ void hrtimer_run_queues(void)
|
||||
@@ -1922,7 +1922,7 @@ void hrtimer_run_queues(void)
|
||||
if (!ktime_before(now, cpu_base->softirq_expires_next)) {
|
||||
cpu_base->softirq_expires_next = KTIME_MAX;
|
||||
cpu_base->softirq_activated = 1;
|
||||
|
@ -229,5 +229,5 @@ index 63a8ce7177dd..7cad6fe3c035 100644
|
|||
|
||||
/*
|
||||
--
|
||||
2.43.0
|
||||
2.43.2
|
||||
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
From f089c645b517d22f97433deffaaedc9fd6f9b598 Mon Sep 17 00:00:00 2001
|
||||
From 5cad67f914fcb553250226df80262091c892b24b Mon Sep 17 00:00:00 2001
|
||||
From: Frederic Weisbecker <frederic@kernel.org>
|
||||
Date: Tue, 5 Apr 2022 03:07:51 +0200
|
||||
Subject: [PATCH 020/195] rcutorture: Also force sched priority to timersd on
|
||||
Subject: [PATCH 020/196] rcutorture: Also force sched priority to timersd on
|
||||
boosting test.
|
||||
|
||||
ksoftirqd is statically boosted to the priority level right above the
|
||||
|
@ -76,5 +76,5 @@ index c29c30106eb8..1277abc94228 100644
|
|||
|
||||
static unsigned int local_pending_timers(void)
|
||||
--
|
||||
2.43.0
|
||||
2.43.2
|
||||
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
From ed846d5dfed571d1dc9ab756a1240a93018004b5 Mon Sep 17 00:00:00 2001
|
||||
From 258f3ad84b7913d34d1ba886504d32c6035e9062 Mon Sep 17 00:00:00 2001
|
||||
From: Frederic Weisbecker <frederic@kernel.org>
|
||||
Date: Tue, 5 Apr 2022 03:07:52 +0200
|
||||
Subject: [PATCH 021/195] tick: Fix timer storm since introduction of timersd
|
||||
Subject: [PATCH 021/196] tick: Fix timer storm since introduction of timersd
|
||||
|
||||
If timers are pending while the tick is reprogrammed on nohz_mode, the
|
||||
next expiry is not armed to fire now, it is delayed one jiffy forward
|
||||
|
@ -98,7 +98,7 @@ index 1277abc94228..a4d359e2c2b5 100644
|
|||
static void wake_timersd(void)
|
||||
{
|
||||
diff --git a/kernel/time/tick-sched.c b/kernel/time/tick-sched.c
|
||||
index 5cbd0cee83c0..2d7036714c81 100644
|
||||
index 55cbc49f70d1..1a0ed106b192 100644
|
||||
--- a/kernel/time/tick-sched.c
|
||||
+++ b/kernel/time/tick-sched.c
|
||||
@@ -795,7 +795,7 @@ static void tick_nohz_restart(struct tick_sched *ts, ktime_t now)
|
||||
|
@ -111,5 +111,5 @@ index 5cbd0cee83c0..2d7036714c81 100644
|
|||
|
||||
static ktime_t tick_nohz_next_event(struct tick_sched *ts, int cpu)
|
||||
--
|
||||
2.43.0
|
||||
2.43.2
|
||||
|
||||
|
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue