mirror of
https://github.com/home-assistant/operating-system.git
synced 2025-07-31 16:57:42 +00:00
Compare commits
94 Commits
Author | SHA1 | Date | |
---|---|---|---|
![]() |
09f9b4f9f4 | ||
![]() |
b5fdd0e0e2 | ||
![]() |
425fc31190 | ||
![]() |
d2af211947 | ||
![]() |
cb694ed611 | ||
![]() |
b4c22c715b | ||
![]() |
6b5e530017 | ||
![]() |
292a9d7923 | ||
![]() |
8029717461 | ||
![]() |
56b4dbf4b9 | ||
![]() |
24e9c096d6 | ||
![]() |
03719b15d4 | ||
![]() |
e985e4a611 | ||
![]() |
d959e9fced | ||
![]() |
abd6c5a29f | ||
![]() |
e190d45c2b | ||
![]() |
9e3ea64ab0 | ||
![]() |
c050f18581 | ||
![]() |
c4d20e471b | ||
![]() |
76205c21c4 | ||
![]() |
438604bf07 | ||
![]() |
6bcc363822 | ||
![]() |
1fca4ebe9b | ||
![]() |
cf2c2dd128 | ||
![]() |
831d1efa91 | ||
![]() |
be1bbff3ca | ||
![]() |
b06b256a40 | ||
![]() |
1df2b2615d | ||
![]() |
5b8e390e90 | ||
![]() |
66f524c947 | ||
![]() |
29ad85d8ff | ||
![]() |
1c2a61bc91 | ||
![]() |
9ca836f1c2 | ||
![]() |
2e1069d858 | ||
![]() |
bdadaf5325 | ||
![]() |
dc17f6c38d | ||
![]() |
9fccff1d48 | ||
![]() |
e562f43f10 | ||
![]() |
fef5984543 | ||
![]() |
ace55d4c4b | ||
![]() |
5977f5d514 | ||
![]() |
b7be663ced | ||
![]() |
91cb63cd0a | ||
![]() |
182db6a68a | ||
![]() |
24161a469a | ||
![]() |
89a06f46ab | ||
![]() |
135fd6ab7e | ||
![]() |
058339d118 | ||
![]() |
f9d5383ed0 | ||
![]() |
87ab130e32 | ||
![]() |
06f39fe41e | ||
![]() |
967776f73f | ||
![]() |
0591e2af6d | ||
![]() |
de75046f62 | ||
![]() |
e09e8fc41a | ||
![]() |
6fcf4c30b4 | ||
![]() |
1a750b5558 | ||
![]() |
502b8de505 | ||
![]() |
cc84ab31db | ||
![]() |
61c3c87644 | ||
![]() |
ba8672637d | ||
![]() |
4dc4d1462a | ||
![]() |
bbbf2489c1 | ||
![]() |
fedde38386 | ||
![]() |
b2836bb225 | ||
![]() |
849dbb4a09 | ||
![]() |
3e2b0baf15 | ||
![]() |
0caadf4c69 | ||
![]() |
a868677016 | ||
![]() |
f0e0e36926 | ||
![]() |
d0f643edfe | ||
![]() |
8d95a17d67 | ||
![]() |
e2a0111710 | ||
![]() |
addbfe6d7e | ||
![]() |
63f57a6ab2 | ||
![]() |
6c71582211 | ||
![]() |
2f28fed571 | ||
![]() |
3c3db6fb8c | ||
![]() |
112526ccbf | ||
![]() |
e71efcee3d | ||
![]() |
0e506cca69 | ||
![]() |
aec4c0b8d2 | ||
![]() |
34cf188f58 | ||
![]() |
2dcb59d43f | ||
![]() |
ca63e7fd32 | ||
![]() |
b4565de2ed | ||
![]() |
3873d9e12b | ||
![]() |
046abb8c47 | ||
![]() |
466db83901 | ||
![]() |
858a5efe4b | ||
![]() |
abc5686462 | ||
![]() |
4a2e53cda4 | ||
![]() |
c0d0d48c45 | ||
![]() |
76b14baa20 |
31
.github/workflows/dev.yml
vendored
31
.github/workflows/dev.yml
vendored
@ -11,7 +11,7 @@ jobs:
|
||||
prepare:
|
||||
if: ${{ github.event_name == 'workflow_dispatch' || contains(github.event.pull_request.labels.*.name, 'run-dev-build') }}
|
||||
name: Prepare build
|
||||
runs-on: [ "ubuntu-20.04" ]
|
||||
runs-on: ubuntu-22.04
|
||||
permissions:
|
||||
contents: read
|
||||
pull-requests: read
|
||||
@ -68,7 +68,7 @@ jobs:
|
||||
strategy:
|
||||
fail-fast: false
|
||||
matrix: ${{ fromJson(needs.prepare.outputs.matrix) }}
|
||||
runs-on: ${{ matrix.board.runner }}
|
||||
runs-on: ubuntu-22.04
|
||||
|
||||
steps:
|
||||
- name: Define git reference
|
||||
@ -98,14 +98,34 @@ jobs:
|
||||
echo -e "-----BEGIN CERTIFICATE-----\n${RAUC_CERTIFICATE}\n-----END CERTIFICATE-----" > cert.pem
|
||||
echo -e "-----BEGIN PRIVATE KEY-----\n${RAUC_PRIVATE_KEY}\n-----END PRIVATE KEY-----" > key.pem
|
||||
|
||||
- name: Free space on build drive
|
||||
run: |
|
||||
# Inspired by https://github.com/easimon/maximize-build-space/blob/v7/action.yml
|
||||
sudo rm -rf /usr/local/lib/android/sdk/ndk
|
||||
sudo rm -rf /opt/hostedtoolcache/CodeQL
|
||||
# Make sure cache action can restore this lcoation
|
||||
sudo mkdir /mnt/cache
|
||||
sudo chown -R runner:runner /mnt/cache
|
||||
|
||||
- name: Cache downloads
|
||||
uses: actions/cache@v3
|
||||
with:
|
||||
path: /mnt/cache/dl
|
||||
key: haos-dl
|
||||
|
||||
- name: Cache object files
|
||||
uses: actions/cache@v3
|
||||
with:
|
||||
path: /mnt/cache/cc
|
||||
key: haos-cc-${{ matrix.board.architecture }}
|
||||
|
||||
- name: Build
|
||||
run: |
|
||||
BUILDER_UID="$(id -u)"
|
||||
BUILDER_GID="$(id -g)"
|
||||
docker run --rm --privileged -v "${GITHUB_WORKSPACE}:/build" \
|
||||
-e BUILDER_UID="${BUILDER_UID}" -e BUILDER_GID="${BUILDER_GID}" \
|
||||
-v "${{ matrix.board.runner }}-build-cache:/cache" \
|
||||
-v "/build/output" \
|
||||
-v "/mnt/cache:/cache" \
|
||||
haos-builder make BUILDDIR=/build VERSION_DEV=${{ needs.prepare.outputs.version_dev }} ${{ matrix.board.defconfig }}
|
||||
|
||||
- name: Upload images
|
||||
@ -113,13 +133,14 @@ jobs:
|
||||
with:
|
||||
rsh: -q
|
||||
switches: -aW
|
||||
path: release/
|
||||
path: output/images/haos_*
|
||||
remote_path: ${{ secrets.DEV_TARGET_PATH }}/${{ needs.prepare.outputs.version_main }}.${{ needs.prepare.outputs.version_dev }}/
|
||||
remote_host: ${{ secrets.DEV_HOST }}
|
||||
remote_port: ${{ secrets.DEV_PORT }}
|
||||
remote_user: ${{ secrets.DEV_USERNAME }}
|
||||
remote_key: ${{ secrets.DEV_SSH_KEY }}
|
||||
|
||||
|
||||
bump_version:
|
||||
name: Bump dev channel version
|
||||
if: ${{ github.event_name == 'workflow_dispatch' }}
|
||||
|
38
.github/workflows/matrix.json
vendored
38
.github/workflows/matrix.json
vendored
@ -2,97 +2,103 @@
|
||||
{
|
||||
"id": "ova",
|
||||
"defconfig": "ova",
|
||||
"runner": "x86-64-runner",
|
||||
"architecture": "x86-64",
|
||||
"label": "board/ova"
|
||||
},
|
||||
{
|
||||
"id": "generic-x86-64",
|
||||
"defconfig": "generic_x86_64",
|
||||
"runner": "x86-64-runner",
|
||||
"architecture": "x86-64",
|
||||
"label": "board/generic-x86-64"
|
||||
},
|
||||
{
|
||||
"id": "generic-aarch64",
|
||||
"defconfig": "generic_aarch64",
|
||||
"runner": "aarch64-runner",
|
||||
"architecture": "aarch64",
|
||||
"label": "board/generic-aarch64"
|
||||
},
|
||||
{
|
||||
"id": "khadas-vim3",
|
||||
"defconfig": "khadas_vim3",
|
||||
"runner": "aarch64-runner",
|
||||
"architecture": "aarch64",
|
||||
"label": "board/khadas"
|
||||
},
|
||||
{
|
||||
"id": "odroid-c2",
|
||||
"defconfig": "odroid_c2",
|
||||
"runner": "aarch64-runner",
|
||||
"architecture": "aarch64",
|
||||
"label": "board/odroid"
|
||||
},
|
||||
{
|
||||
"id": "odroid-c4",
|
||||
"defconfig": "odroid_c4",
|
||||
"runner": "aarch64-runner",
|
||||
"architecture": "aarch64",
|
||||
"label": "board/odroid"
|
||||
},
|
||||
{
|
||||
"id": "odroid-m1",
|
||||
"defconfig": "odroid_m1",
|
||||
"runner": "aarch64-runner",
|
||||
"architecture": "aarch64",
|
||||
"label": "board/odroid"
|
||||
},
|
||||
{
|
||||
"id": "odroid-n2",
|
||||
"defconfig": "odroid_n2",
|
||||
"runner": "aarch64-runner",
|
||||
"architecture": "aarch64",
|
||||
"label": "board/odroid"
|
||||
},
|
||||
{
|
||||
"id": "odroid-xu4",
|
||||
"defconfig": "odroid_xu4",
|
||||
"runner": "aarch64-runner",
|
||||
"architecture": "aarch64",
|
||||
"label": "board/odroid"
|
||||
},
|
||||
{
|
||||
"id": "rpi2",
|
||||
"defconfig": "rpi2",
|
||||
"runner": "arm-runner",
|
||||
"architecture": "arm",
|
||||
"label": "board/raspberrypi"
|
||||
},
|
||||
{
|
||||
"id": "rpi3",
|
||||
"defconfig": "rpi3",
|
||||
"runner": "arm-runner",
|
||||
"architecture": "arm",
|
||||
"label": "board/raspberrypi"
|
||||
},
|
||||
{
|
||||
"id": "rpi3-64",
|
||||
"defconfig": "rpi3_64",
|
||||
"runner": "aarch64-runner",
|
||||
"architecture": "aarch64",
|
||||
"label": "board/raspberrypi"
|
||||
},
|
||||
{
|
||||
"id": "rpi4",
|
||||
"defconfig": "rpi4",
|
||||
"runner": "arm-runner",
|
||||
"architecture": "arm",
|
||||
"label": "board/raspberrypi"
|
||||
},
|
||||
{
|
||||
"id": "rpi4-64",
|
||||
"defconfig": "rpi4_64",
|
||||
"runner": "aarch64-runner",
|
||||
"architecture": "aarch64",
|
||||
"label": "board/raspberrypi"
|
||||
},
|
||||
{
|
||||
"id": "yellow",
|
||||
"defconfig": "yellow",
|
||||
"runner": "aarch64-runner",
|
||||
"architecture": "aarch64",
|
||||
"label": "board/yellow"
|
||||
},
|
||||
{
|
||||
"id": "green",
|
||||
"defconfig": "green",
|
||||
"architecture": "aarch64",
|
||||
"label": "board/green"
|
||||
},
|
||||
{
|
||||
"id": "tinker",
|
||||
"defconfig": "tinker",
|
||||
"runner": "arm-runner",
|
||||
"architecture": "arm",
|
||||
"label": "board/tinker"
|
||||
}
|
||||
]
|
||||
|
108
.github/workflows/release.yml
vendored
108
.github/workflows/release.yml
vendored
@ -9,7 +9,7 @@ on:
|
||||
jobs:
|
||||
validate_release:
|
||||
name: Validate release
|
||||
runs-on: [ "ubuntu-20.04" ]
|
||||
runs-on: ubuntu-22.04
|
||||
outputs:
|
||||
version: ${{ steps.version_check.outputs.version }}
|
||||
version_dev: ${{ steps.version_check.outputs.version_dev }}
|
||||
@ -49,11 +49,11 @@ jobs:
|
||||
needs: validate_release
|
||||
strategy:
|
||||
matrix: ${{ fromJson(needs.validate_release.outputs.matrix) }}
|
||||
runs-on: ${{ matrix.board.runner }}
|
||||
runs-on: ubuntu-22.04
|
||||
|
||||
steps:
|
||||
# Checks-out your repository under $GITHUB_WORKSPACE, so your job can access it
|
||||
- uses: actions/checkout@v3
|
||||
- name: Checkout source
|
||||
uses: actions/checkout@v3
|
||||
with:
|
||||
submodules: true
|
||||
|
||||
@ -68,91 +68,41 @@ jobs:
|
||||
echo -e "-----BEGIN CERTIFICATE-----\n${RAUC_CERTIFICATE}\n-----END CERTIFICATE-----" > cert.pem
|
||||
echo -e "-----BEGIN PRIVATE KEY-----\n${RAUC_PRIVATE_KEY}\n-----END PRIVATE KEY-----" > key.pem
|
||||
|
||||
- name: Free space on build drive
|
||||
run: |
|
||||
# Inspired by https://github.com/easimon/maximize-build-space/blob/v7/action.yml
|
||||
sudo rm -rf /usr/local/lib/android/sdk/ndk
|
||||
sudo rm -rf /opt/hostedtoolcache/CodeQL
|
||||
# Make sure cache action can restore this lcoation
|
||||
sudo mkdir /mnt/cache
|
||||
sudo chown -R runner:runner /mnt/cache
|
||||
|
||||
- name: Cache downloads
|
||||
uses: actions/cache@v3
|
||||
with:
|
||||
path: /mnt/cache/dl
|
||||
key: haos-dl
|
||||
|
||||
- name: Cache object files
|
||||
uses: actions/cache@v3
|
||||
with:
|
||||
path: /mnt/cache/cc
|
||||
key: haos-cc-${{ matrix.board.architecture }}
|
||||
|
||||
- name: Build
|
||||
run: |
|
||||
BUILDER_UID="$(id -u)"
|
||||
BUILDER_GID="$(id -g)"
|
||||
docker run --rm --privileged -v "${GITHUB_WORKSPACE}:/build" \
|
||||
-e BUILDER_UID="${BUILDER_UID}" -e BUILDER_GID="${BUILDER_GID}" \
|
||||
-v "${{ matrix.board.runner }}-build-cache:/cache" \
|
||||
-v "/build/output" \
|
||||
-v "/mnt/cache:/cache" \
|
||||
haos-builder make BUILDDIR=/build VERSION_DEV=${{ needs.validate_release.outputs.version_dev }} ${{ matrix.board.defconfig }}
|
||||
|
||||
- name: Upload disk image
|
||||
if: ${{ matrix.board.id != 'ova' }}
|
||||
uses: actions/upload-release-asset@v1
|
||||
env:
|
||||
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
||||
- name: Upload release assets
|
||||
uses: shogo82148/actions-upload-release-asset@v1
|
||||
with:
|
||||
upload_url: ${{ github.event.release.upload_url }}
|
||||
asset_path: ${{ github.workspace }}/release/haos_${{ matrix.board.id }}-${{ needs.validate_release.outputs.version }}.img.xz
|
||||
asset_name: haos_${{ matrix.board.id }}-${{ needs.validate_release.outputs.version }}.img.xz
|
||||
asset_content_type: application/x-xz
|
||||
|
||||
- name: Upload rauc update
|
||||
uses: actions/upload-release-asset@v1
|
||||
env:
|
||||
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
||||
with:
|
||||
upload_url: ${{ github.event.release.upload_url }}
|
||||
asset_path: ${{ github.workspace }}/release/haos_${{ matrix.board.id }}-${{ needs.validate_release.outputs.version }}.raucb
|
||||
asset_name: haos_${{ matrix.board.id }}-${{ needs.validate_release.outputs.version }}.raucb
|
||||
asset_content_type: application/octet-stream
|
||||
|
||||
- name: Upload ova image
|
||||
if: ${{ matrix.board.id == 'ova' }}
|
||||
uses: actions/upload-release-asset@v1
|
||||
env:
|
||||
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
||||
with:
|
||||
upload_url: ${{ github.event.release.upload_url }}
|
||||
asset_path: ${{ github.workspace }}/release/haos_${{ matrix.board.id }}-${{ needs.validate_release.outputs.version }}.ova
|
||||
asset_name: haos_${{ matrix.board.id }}-${{ needs.validate_release.outputs.version }}.ova
|
||||
asset_content_type: application/x-tar
|
||||
|
||||
- name: Upload qcow2 image
|
||||
if: ${{ matrix.board.id == 'ova' || matrix.board.id == 'generic-aarch64' }}
|
||||
uses: actions/upload-release-asset@v1
|
||||
env:
|
||||
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
||||
with:
|
||||
upload_url: ${{ github.event.release.upload_url }}
|
||||
asset_path: ${{ github.workspace }}/release/haos_${{ matrix.board.id }}-${{ needs.validate_release.outputs.version }}.qcow2.xz
|
||||
asset_name: haos_${{ matrix.board.id }}-${{ needs.validate_release.outputs.version }}.qcow2.xz
|
||||
asset_content_type: application/x-xz
|
||||
|
||||
- name: Upload vdi image
|
||||
if: ${{ matrix.board.id == 'ova' }}
|
||||
uses: actions/upload-release-asset@v1
|
||||
env:
|
||||
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
||||
with:
|
||||
upload_url: ${{ github.event.release.upload_url }}
|
||||
asset_path: ${{ github.workspace }}/release/haos_${{ matrix.board.id }}-${{ needs.validate_release.outputs.version }}.vdi.zip
|
||||
asset_name: haos_${{ matrix.board.id }}-${{ needs.validate_release.outputs.version }}.vdi.zip
|
||||
asset_content_type: application/zip
|
||||
|
||||
- name: Upload vhdx image
|
||||
if: ${{ matrix.board.id == 'ova' }}
|
||||
uses: actions/upload-release-asset@v1
|
||||
env:
|
||||
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
||||
with:
|
||||
upload_url: ${{ github.event.release.upload_url }}
|
||||
asset_path: ${{ github.workspace }}/release/haos_${{ matrix.board.id }}-${{ needs.validate_release.outputs.version }}.vhdx.zip
|
||||
asset_name: haos_${{ matrix.board.id }}-${{ needs.validate_release.outputs.version }}.vhdx.zip
|
||||
asset_content_type: application/zip
|
||||
|
||||
- name: Upload vmdk image
|
||||
if: ${{ matrix.board.id == 'ova' || matrix.board.id == 'generic-aarch64' }}
|
||||
uses: actions/upload-release-asset@v1
|
||||
env:
|
||||
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
||||
with:
|
||||
upload_url: ${{ github.event.release.upload_url }}
|
||||
asset_path: ${{ github.workspace }}/release/haos_${{ matrix.board.id }}-${{ needs.validate_release.outputs.version }}.vmdk.zip
|
||||
asset_name: haos_${{ matrix.board.id }}-${{ needs.validate_release.outputs.version }}.vmdk.zip
|
||||
asset_content_type: application/zip
|
||||
asset_path: output/images/haos_*
|
||||
|
||||
bump_version:
|
||||
name: Bump dev version to ${{ needs.validate_release.outputs.version }}
|
||||
|
@ -1,23 +1,24 @@
|
||||
|
||||
# Kernel Version
|
||||
|
||||
Default Kernel tree: 5.15
|
||||
Default Kernel tree: 6.1
|
||||
|
||||
| Board | Version |
|
||||
|-------|---------|
|
||||
| Open Virtual Appliance | 6.1.21 |
|
||||
| Raspberry Pi | 6.1.19 |
|
||||
| Raspberry Pi 0-W | 6.1.19 |
|
||||
| Raspberry Pi 2 | 6.1.19 |
|
||||
| Raspberry Pi 3 | 6.1.19 |
|
||||
| Raspberry Pi 4 | 6.1.19 |
|
||||
| Home Assistant Yellow | 6.1.19 |
|
||||
| Tinker Board | 6.1.21 |
|
||||
| ODROID-C2 | 6.1.21 |
|
||||
| ODROID-C4 | 6.1.21 |
|
||||
| ODROID-M1 | 6.1.21 |
|
||||
| ODROID-N2 | 6.1.21 |
|
||||
| ODROID-XU4 | 6.1.21 |
|
||||
| Generic aarch64 | 6.1.21 |
|
||||
| Generic x86-64 | 6.1.21 |
|
||||
| Khadas VIM3 | 6.1.21 |
|
||||
| Open Virtual Appliance | 6.1.45 |
|
||||
| Raspberry Pi | 6.1.21 |
|
||||
| Raspberry Pi 0-W | 6.1.21 |
|
||||
| Raspberry Pi 2 | 6.1.21 |
|
||||
| Raspberry Pi 3 | 6.1.21 |
|
||||
| Raspberry Pi 4 | 6.1.21 |
|
||||
| Home Assistant Yellow | 6.1.21 |
|
||||
| Home Assistant Green | 6.1.45 |
|
||||
| Tinker Board | 6.1.45 |
|
||||
| ODROID-C2 | 6.1.45 |
|
||||
| ODROID-C4 | 6.1.45 |
|
||||
| ODROID-M1 | 6.1.45 |
|
||||
| ODROID-N2 | 6.1.45 |
|
||||
| ODROID-XU4 | 6.1.45 |
|
||||
| Generic aarch64 | 6.1.45 |
|
||||
| Generic x86-64 | 6.1.45 |
|
||||
| Khadas VIM3 | 6.1.45 |
|
||||
|
7
Makefile
7
Makefile
@ -1,5 +1,4 @@
|
||||
BUILDDIR:=$(shell pwd)
|
||||
RELEASE_DIR = $(BUILDDIR)/release
|
||||
|
||||
BUILDROOT=$(BUILDDIR)/buildroot
|
||||
BUILDROOT_EXTERNAL=$(BUILDDIR)/buildroot-external
|
||||
@ -23,9 +22,6 @@ endif
|
||||
|
||||
all: $(TARGETS)
|
||||
|
||||
$(RELEASE_DIR):
|
||||
mkdir -p $(RELEASE_DIR)
|
||||
|
||||
savedefconfig:
|
||||
@echo "config $*"
|
||||
$(MAKE) -C $(BUILDROOT) O=$(O) BR2_EXTERNAL=$(BUILDROOT_EXTERNAL) "savedefconfig"
|
||||
@ -34,10 +30,9 @@ $(TARGETS_CONFIG): %-config:
|
||||
@echo "config $*"
|
||||
$(MAKE) -C $(BUILDROOT) O=$(O) BR2_EXTERNAL=$(BUILDROOT_EXTERNAL) "$*_defconfig"
|
||||
|
||||
$(TARGETS): %: $(RELEASE_DIR) %-config
|
||||
$(TARGETS): %: %-config
|
||||
@echo "build $@"
|
||||
$(MAKE) -C $(BUILDROOT) O=$(O) BR2_EXTERNAL=$(BUILDROOT_EXTERNAL) VERSION_DEV=$(VERSION_DEV)
|
||||
cp -f $(O)/images/haos_* $(RELEASE_DIR)/
|
||||
|
||||
# Do not clean when building for one target
|
||||
ifneq ($(words $(filter $(TARGETS),$(MAKECMDGOALS))), 1)
|
||||
|
@ -1 +1 @@
|
||||
Subproject commit 2ccc4c3f04e4c23beb286ac969061b911bb84c0f
|
||||
Subproject commit 005b88359ccf628dc017ca867ea3fd9dba16ed69
|
@ -4289,3 +4289,7 @@ CONFIG_RCU_CPU_STALL_TIMEOUT=60
|
||||
CONFIG_FUNCTION_ERROR_INJECTION=y
|
||||
# CONFIG_RUNTIME_TESTING_MENU is not set
|
||||
CONFIG_MEMTEST=y
|
||||
CONFIG_ARMV8_DEPRECATED=y
|
||||
CONFIG_SWP_EMULATION=y
|
||||
CONFIG_CP15_BARRIER_EMULATION=y
|
||||
CONFIG_SETEND_EMULATION=y
|
||||
|
@ -1,5 +1,5 @@
|
||||
From d388735d551e09b00317a509859fca51776b9826 Mon Sep 17 00:00:00 2001
|
||||
Message-Id: <d388735d551e09b00317a509859fca51776b9826.1678107917.git.stefan@agner.ch>
|
||||
Message-ID: <d388735d551e09b00317a509859fca51776b9826.1688490481.git.stefan@agner.ch>
|
||||
From: Dongjin Kim <tobetter@gmail.com>
|
||||
Date: Fri, 30 Sep 2022 07:12:35 +0200
|
||||
Subject: [PATCH] arm64: dts: rockchip: Add Hardkernel ODROID-M1 board
|
||||
@ -451,5 +451,5 @@ index 000000000000..b3016437640b
|
||||
+ status = "okay";
|
||||
+};
|
||||
--
|
||||
2.39.2
|
||||
2.41.0
|
||||
|
||||
|
@ -1,7 +1,7 @@
|
||||
From 24048c1753916bd983746542b16d19d2b399eeb7 Mon Sep 17 00:00:00 2001
|
||||
Message-Id: <24048c1753916bd983746542b16d19d2b399eeb7.1678107917.git.stefan@agner.ch>
|
||||
In-Reply-To: <d388735d551e09b00317a509859fca51776b9826.1678107917.git.stefan@agner.ch>
|
||||
References: <d388735d551e09b00317a509859fca51776b9826.1678107917.git.stefan@agner.ch>
|
||||
Message-ID: <24048c1753916bd983746542b16d19d2b399eeb7.1688490481.git.stefan@agner.ch>
|
||||
In-Reply-To: <d388735d551e09b00317a509859fca51776b9826.1688490481.git.stefan@agner.ch>
|
||||
References: <d388735d551e09b00317a509859fca51776b9826.1688490481.git.stefan@agner.ch>
|
||||
From: Aurelien Jarno <aurelien@aurel32.net>
|
||||
Date: Fri, 30 Sep 2022 07:12:36 +0200
|
||||
Subject: [PATCH] arm64: dts: rockchip: add thermal support to ODROID-M1
|
||||
@ -34,5 +34,5 @@ index b3016437640b..112c65af3f55 100644
|
||||
status = "okay";
|
||||
};
|
||||
--
|
||||
2.39.2
|
||||
2.41.0
|
||||
|
||||
|
@ -1,7 +1,7 @@
|
||||
From 982bb2beab8e38a7c0a365770be2ad9c5221a650 Mon Sep 17 00:00:00 2001
|
||||
Message-Id: <982bb2beab8e38a7c0a365770be2ad9c5221a650.1678107917.git.stefan@agner.ch>
|
||||
In-Reply-To: <d388735d551e09b00317a509859fca51776b9826.1678107917.git.stefan@agner.ch>
|
||||
References: <d388735d551e09b00317a509859fca51776b9826.1678107917.git.stefan@agner.ch>
|
||||
Message-ID: <982bb2beab8e38a7c0a365770be2ad9c5221a650.1688490481.git.stefan@agner.ch>
|
||||
In-Reply-To: <d388735d551e09b00317a509859fca51776b9826.1688490481.git.stefan@agner.ch>
|
||||
References: <d388735d551e09b00317a509859fca51776b9826.1688490481.git.stefan@agner.ch>
|
||||
From: Aurelien Jarno <aurelien@aurel32.net>
|
||||
Date: Fri, 30 Sep 2022 07:12:37 +0200
|
||||
Subject: [PATCH] arm64: dts: rockchip: Add NOR flash to ODROID-M1
|
||||
@ -99,5 +99,5 @@ index 112c65af3f55..94e839c9afab 100644
|
||||
rockchip,hw-tshut-mode = <1>;
|
||||
rockchip,hw-tshut-polarity = <0>;
|
||||
--
|
||||
2.39.2
|
||||
2.41.0
|
||||
|
||||
|
@ -1,7 +1,7 @@
|
||||
From ae25f92a09abb7dd16a9ad3b74e0c105b385f214 Mon Sep 17 00:00:00 2001
|
||||
Message-Id: <ae25f92a09abb7dd16a9ad3b74e0c105b385f214.1678107917.git.stefan@agner.ch>
|
||||
In-Reply-To: <d388735d551e09b00317a509859fca51776b9826.1678107917.git.stefan@agner.ch>
|
||||
References: <d388735d551e09b00317a509859fca51776b9826.1678107917.git.stefan@agner.ch>
|
||||
Message-ID: <ae25f92a09abb7dd16a9ad3b74e0c105b385f214.1688490481.git.stefan@agner.ch>
|
||||
In-Reply-To: <d388735d551e09b00317a509859fca51776b9826.1688490481.git.stefan@agner.ch>
|
||||
References: <d388735d551e09b00317a509859fca51776b9826.1688490481.git.stefan@agner.ch>
|
||||
From: Aurelien Jarno <aurelien@aurel32.net>
|
||||
Date: Fri, 30 Sep 2022 07:12:38 +0200
|
||||
Subject: [PATCH] arm64: dts: rockchip: Add analog audio on ODROID-M1
|
||||
@ -98,5 +98,5 @@ index 94e839c9afab..634c1bd80b4e 100644
|
||||
|
||||
&pmu_io_domains {
|
||||
--
|
||||
2.39.2
|
||||
2.41.0
|
||||
|
||||
|
@ -1,7 +1,7 @@
|
||||
From 3a1be3d8719ef6335385d4e5e456371e7bf7383f Mon Sep 17 00:00:00 2001
|
||||
Message-Id: <3a1be3d8719ef6335385d4e5e456371e7bf7383f.1678107917.git.stefan@agner.ch>
|
||||
In-Reply-To: <d388735d551e09b00317a509859fca51776b9826.1678107917.git.stefan@agner.ch>
|
||||
References: <d388735d551e09b00317a509859fca51776b9826.1678107917.git.stefan@agner.ch>
|
||||
Message-ID: <3a1be3d8719ef6335385d4e5e456371e7bf7383f.1688490481.git.stefan@agner.ch>
|
||||
In-Reply-To: <d388735d551e09b00317a509859fca51776b9826.1688490481.git.stefan@agner.ch>
|
||||
References: <d388735d551e09b00317a509859fca51776b9826.1688490481.git.stefan@agner.ch>
|
||||
From: Aurelien Jarno <aurelien@aurel32.net>
|
||||
Date: Fri, 30 Sep 2022 07:12:39 +0200
|
||||
Subject: [PATCH] arm64: dts: rockchip: Enable vop2 and hdmi tx on ODROID-M1
|
||||
@ -93,5 +93,5 @@ index 634c1bd80b4e..126b893048fe 100644
|
||||
+ };
|
||||
+};
|
||||
--
|
||||
2.39.2
|
||||
2.41.0
|
||||
|
||||
|
@ -1,7 +1,7 @@
|
||||
From ded87dc761951205b8b9ba8ee4081e28a850a3db Mon Sep 17 00:00:00 2001
|
||||
Message-Id: <ded87dc761951205b8b9ba8ee4081e28a850a3db.1678107917.git.stefan@agner.ch>
|
||||
In-Reply-To: <d388735d551e09b00317a509859fca51776b9826.1678107917.git.stefan@agner.ch>
|
||||
References: <d388735d551e09b00317a509859fca51776b9826.1678107917.git.stefan@agner.ch>
|
||||
Message-ID: <ded87dc761951205b8b9ba8ee4081e28a850a3db.1688490481.git.stefan@agner.ch>
|
||||
In-Reply-To: <d388735d551e09b00317a509859fca51776b9826.1688490481.git.stefan@agner.ch>
|
||||
References: <d388735d551e09b00317a509859fca51776b9826.1688490481.git.stefan@agner.ch>
|
||||
From: Aurelien Jarno <aurelien@aurel32.net>
|
||||
Date: Fri, 30 Sep 2022 07:12:40 +0200
|
||||
Subject: [PATCH] arm64: dts: rockchip: Enable HDMI audio on ODROID-M1.
|
||||
@ -44,5 +44,5 @@ index 126b893048fe..ac4e94d18feb 100644
|
||||
rockchip,trcm-sync-tx-only;
|
||||
status = "okay";
|
||||
--
|
||||
2.39.2
|
||||
2.41.0
|
||||
|
||||
|
@ -1,7 +1,7 @@
|
||||
From 13438a717627cae086cc3a1126552cffa2f4bd16 Mon Sep 17 00:00:00 2001
|
||||
Message-Id: <13438a717627cae086cc3a1126552cffa2f4bd16.1678107917.git.stefan@agner.ch>
|
||||
In-Reply-To: <d388735d551e09b00317a509859fca51776b9826.1678107917.git.stefan@agner.ch>
|
||||
References: <d388735d551e09b00317a509859fca51776b9826.1678107917.git.stefan@agner.ch>
|
||||
Message-ID: <13438a717627cae086cc3a1126552cffa2f4bd16.1688490481.git.stefan@agner.ch>
|
||||
In-Reply-To: <d388735d551e09b00317a509859fca51776b9826.1688490481.git.stefan@agner.ch>
|
||||
References: <d388735d551e09b00317a509859fca51776b9826.1688490481.git.stefan@agner.ch>
|
||||
From: Aurelien Jarno <aurelien@aurel32.net>
|
||||
Date: Fri, 30 Sep 2022 07:12:41 +0200
|
||||
Subject: [PATCH] arm64: dts: rockchip: Enable the GPU on ODROID-M1
|
||||
@ -33,5 +33,5 @@ index ac4e94d18feb..e4b7699d3eea 100644
|
||||
avdd-0v9-supply = <&vdda0v9_image>;
|
||||
avdd-1v8-supply = <&vcca1v8_image>;
|
||||
--
|
||||
2.39.2
|
||||
2.41.0
|
||||
|
||||
|
@ -1,7 +1,7 @@
|
||||
From 0f0a85a289b4d0fbd5c39eb5ddbb681a37ad490c Mon Sep 17 00:00:00 2001
|
||||
Message-Id: <0f0a85a289b4d0fbd5c39eb5ddbb681a37ad490c.1678107917.git.stefan@agner.ch>
|
||||
In-Reply-To: <d388735d551e09b00317a509859fca51776b9826.1678107917.git.stefan@agner.ch>
|
||||
References: <d388735d551e09b00317a509859fca51776b9826.1678107917.git.stefan@agner.ch>
|
||||
Message-ID: <0f0a85a289b4d0fbd5c39eb5ddbb681a37ad490c.1688490481.git.stefan@agner.ch>
|
||||
In-Reply-To: <d388735d551e09b00317a509859fca51776b9826.1688490481.git.stefan@agner.ch>
|
||||
References: <d388735d551e09b00317a509859fca51776b9826.1688490481.git.stefan@agner.ch>
|
||||
From: Aurelien Jarno <aurelien@aurel32.net>
|
||||
Date: Fri, 30 Sep 2022 07:12:42 +0200
|
||||
Subject: [PATCH] arm64: dts: rockchip: Enable the USB 2.0 ports on ODROID-M1
|
||||
@ -107,5 +107,5 @@ index e4b7699d3eea..2e4cc20bd676 100644
|
||||
assigned-clocks = <&cru DCLK_VOP0>, <&cru DCLK_VOP1>;
|
||||
assigned-clock-parents = <&pmucru PLL_HPLL>, <&cru PLL_VPLL>;
|
||||
--
|
||||
2.39.2
|
||||
2.41.0
|
||||
|
||||
|
@ -1,7 +1,7 @@
|
||||
From d8abc451c669a8fd36b31db5cb96ec49da819124 Mon Sep 17 00:00:00 2001
|
||||
Message-Id: <d8abc451c669a8fd36b31db5cb96ec49da819124.1678107917.git.stefan@agner.ch>
|
||||
In-Reply-To: <d388735d551e09b00317a509859fca51776b9826.1678107917.git.stefan@agner.ch>
|
||||
References: <d388735d551e09b00317a509859fca51776b9826.1678107917.git.stefan@agner.ch>
|
||||
Message-ID: <d8abc451c669a8fd36b31db5cb96ec49da819124.1688490481.git.stefan@agner.ch>
|
||||
In-Reply-To: <d388735d551e09b00317a509859fca51776b9826.1688490481.git.stefan@agner.ch>
|
||||
References: <d388735d551e09b00317a509859fca51776b9826.1688490481.git.stefan@agner.ch>
|
||||
From: Aurelien Jarno <aurelien@aurel32.net>
|
||||
Date: Fri, 30 Sep 2022 07:12:43 +0200
|
||||
Subject: [PATCH] arm64: dts: rockchip: Enable the USB 3.0 ports on ODROID-M1
|
||||
@ -110,5 +110,5 @@ index 2e4cc20bd676..9a84a7e76d7a 100644
|
||||
status = "okay";
|
||||
};
|
||||
--
|
||||
2.39.2
|
||||
2.41.0
|
||||
|
||||
|
@ -1,7 +1,7 @@
|
||||
From 2f6d4521403932ca22cb4dabef9033f1d52232ba Mon Sep 17 00:00:00 2001
|
||||
Message-Id: <2f6d4521403932ca22cb4dabef9033f1d52232ba.1678107917.git.stefan@agner.ch>
|
||||
In-Reply-To: <d388735d551e09b00317a509859fca51776b9826.1678107917.git.stefan@agner.ch>
|
||||
References: <d388735d551e09b00317a509859fca51776b9826.1678107917.git.stefan@agner.ch>
|
||||
Message-ID: <2f6d4521403932ca22cb4dabef9033f1d52232ba.1688490481.git.stefan@agner.ch>
|
||||
In-Reply-To: <d388735d551e09b00317a509859fca51776b9826.1688490481.git.stefan@agner.ch>
|
||||
References: <d388735d551e09b00317a509859fca51776b9826.1688490481.git.stefan@agner.ch>
|
||||
From: Aurelien Jarno <aurelien@aurel32.net>
|
||||
Date: Fri, 30 Sep 2022 07:12:44 +0200
|
||||
Subject: [PATCH] arm64: dts: rockchip: Add SATA support to ODROID-M1
|
||||
@ -44,5 +44,5 @@ index 9a84a7e76d7a..bd24ccf94e76 100644
|
||||
bus-width = <8>;
|
||||
max-frequency = <200000000>;
|
||||
--
|
||||
2.39.2
|
||||
2.41.0
|
||||
|
||||
|
@ -1,7 +1,7 @@
|
||||
From 1572a9c5d9fa9f654fbc1909528ae5940ad34aa3 Mon Sep 17 00:00:00 2001
|
||||
Message-Id: <1572a9c5d9fa9f654fbc1909528ae5940ad34aa3.1678107917.git.stefan@agner.ch>
|
||||
In-Reply-To: <d388735d551e09b00317a509859fca51776b9826.1678107917.git.stefan@agner.ch>
|
||||
References: <d388735d551e09b00317a509859fca51776b9826.1678107917.git.stefan@agner.ch>
|
||||
Message-ID: <1572a9c5d9fa9f654fbc1909528ae5940ad34aa3.1688490481.git.stefan@agner.ch>
|
||||
In-Reply-To: <d388735d551e09b00317a509859fca51776b9826.1688490481.git.stefan@agner.ch>
|
||||
References: <d388735d551e09b00317a509859fca51776b9826.1688490481.git.stefan@agner.ch>
|
||||
From: Aurelien Jarno <aurelien@aurel32.net>
|
||||
Date: Fri, 30 Sep 2022 07:12:45 +0200
|
||||
Subject: [PATCH] arm64: dts: rockchip: Add PCIEe v3 nodes to ODROID-M1
|
||||
@ -76,5 +76,5 @@ index bd24ccf94e76..2f685c606bb9 100644
|
||||
pmic_int_l: pmic-int-l {
|
||||
rockchip,pins = <0 RK_PA3 RK_FUNC_GPIO &pcfg_pull_up>;
|
||||
--
|
||||
2.39.2
|
||||
2.41.0
|
||||
|
||||
|
@ -1,7 +1,7 @@
|
||||
From b2eae73eeb32dd9383571de6af18fc8bd39aac3a Mon Sep 17 00:00:00 2001
|
||||
Message-Id: <b2eae73eeb32dd9383571de6af18fc8bd39aac3a.1678107917.git.stefan@agner.ch>
|
||||
In-Reply-To: <d388735d551e09b00317a509859fca51776b9826.1678107917.git.stefan@agner.ch>
|
||||
References: <d388735d551e09b00317a509859fca51776b9826.1678107917.git.stefan@agner.ch>
|
||||
Message-ID: <b2eae73eeb32dd9383571de6af18fc8bd39aac3a.1688490481.git.stefan@agner.ch>
|
||||
In-Reply-To: <d388735d551e09b00317a509859fca51776b9826.1688490481.git.stefan@agner.ch>
|
||||
References: <d388735d551e09b00317a509859fca51776b9826.1688490481.git.stefan@agner.ch>
|
||||
From: Aurelien Jarno <aurelien@aurel32.net>
|
||||
Date: Fri, 30 Sep 2022 07:12:46 +0200
|
||||
Subject: [PATCH] arm64: dts: rockchip: Add IR receiver node to ODROID-M1
|
||||
@ -50,5 +50,5 @@ index 2f685c606bb9..59ecf868dbd0 100644
|
||||
led_power_pin: led-power-pin {
|
||||
rockchip,pins = <0 RK_PC6 RK_FUNC_GPIO &pcfg_pull_none>;
|
||||
--
|
||||
2.39.2
|
||||
2.41.0
|
||||
|
||||
|
@ -469,15 +469,19 @@ CONFIG_VIDEO_EM28XX_V4L2=m
|
||||
CONFIG_VIDEO_EM28XX_ALSA=m
|
||||
CONFIG_VIDEO_EM28XX_DVB=m
|
||||
CONFIG_MEDIA_PCI_SUPPORT=y
|
||||
CONFIG_CEC_CORE=m
|
||||
CONFIG_CEC_PIN=y
|
||||
CONFIG_MEDIA_CEC_RC=y
|
||||
CONFIG_DRM=y
|
||||
CONFIG_DRM_PANEL_SIMPLE=m
|
||||
CONFIG_DRM_DW_HDMI_CEC=y
|
||||
CONFIG_DRM_MESON=y
|
||||
CONFIG_DRM_DW_HDMI=m
|
||||
CONFIG_DRM_DW_HDMI_I2S_AUDIO=m
|
||||
CONFIG_DRM_MESON=m
|
||||
CONFIG_DRM_MESON_DW_HDMI=m
|
||||
CONFIG_DRM_PL111=m
|
||||
CONFIG_DRM_LIMA=m
|
||||
CONFIG_DRM_PANFROST=m
|
||||
CONFIG_FB_MODE_HELPERS=y
|
||||
CONFIG_FB_EFI=y
|
||||
CONFIG_FB=y
|
||||
CONFIG_BACKLIGHT_CLASS_DEVICE=y
|
||||
CONFIG_BACKLIGHT_PWM=m
|
||||
CONFIG_SOUND=y
|
||||
|
0
buildroot-external/board/nabucasa/green/cmdline.txt
Normal file
0
buildroot-external/board/nabucasa/green/cmdline.txt
Normal file
25
buildroot-external/board/nabucasa/green/hassos-hook.sh
Normal file
25
buildroot-external/board/nabucasa/green/hassos-hook.sh
Normal file
@ -0,0 +1,25 @@
|
||||
#!/bin/bash
|
||||
# shellcheck disable=SC2155
|
||||
|
||||
function hassos_pre_image() {
|
||||
local BOOT_DATA="$(path_boot_dir)"
|
||||
local SPL_IMG="$(path_spl_img)"
|
||||
|
||||
cp "${BINARIES_DIR}/boot.scr" "${BOOT_DATA}/boot.scr"
|
||||
cp "${BINARIES_DIR}"/*.dtb "${BOOT_DATA}/"
|
||||
|
||||
cp "${BOARD_DIR}/boot-env.txt" "${BOOT_DATA}/haos-config.txt"
|
||||
cp "${BOARD_DIR}/cmdline.txt" "${BOOT_DATA}/cmdline.txt"
|
||||
|
||||
# SPL
|
||||
create_spl_image
|
||||
|
||||
dd if="${BINARIES_DIR}/idbloader.img" of="${SPL_IMG}" conv=notrunc bs=512 seek=64
|
||||
dd if="${BINARIES_DIR}/u-boot.itb" of="${SPL_IMG}" conv=notrunc bs=512 seek=16384
|
||||
}
|
||||
|
||||
|
||||
function hassos_post_image() {
|
||||
convert_disk_image_xz
|
||||
}
|
||||
|
14
buildroot-external/board/nabucasa/green/kernel.config
Normal file
14
buildroot-external/board/nabucasa/green/kernel.config
Normal file
@ -0,0 +1,14 @@
|
||||
CONFIG_CPU_FREQ_DEFAULT_GOV_PERFORMANCE=y
|
||||
|
||||
CONFIG_THERMAL_GOV_BANG_BANG=y
|
||||
CONFIG_SENSORS_GPIO_FAN=y
|
||||
|
||||
CONFIG_KEYBOARD_GPIO=y
|
||||
CONFIG_KEYBOARD_GPIO_POLLED=y
|
||||
|
||||
CONFIG_MMC_SDHCI_OF_DWCMSHC=y
|
||||
|
||||
CONFIG_REGULATOR_RK808=y
|
||||
CONFIG_REGULATOR_RK860X=y
|
||||
|
||||
# CONFIG_DW_WATCHDOG is not set
|
12
buildroot-external/board/nabucasa/green/meta
Normal file
12
buildroot-external/board/nabucasa/green/meta
Normal file
@ -0,0 +1,12 @@
|
||||
BOARD_ID=green
|
||||
BOARD_NAME="Home Assistant Green"
|
||||
CHASSIS=embedded
|
||||
BOOTLOADER=uboot
|
||||
KERNEL_FILE=Image
|
||||
BOOT_SYS=gpt
|
||||
BOOT_SIZE=16M
|
||||
BOOT_SPL=true
|
||||
BOOT_SPL_SIZE=16M
|
||||
BOOT_ENV_SIZE=0x8000
|
||||
SUPERVISOR_MACHINE=green
|
||||
SUPERVISOR_ARCH=aarch64
|
@ -0,0 +1,662 @@
|
||||
From b7957b94fe2649a1e8032b10ea293b106cda4532 Mon Sep 17 00:00:00 2001
|
||||
From: Zhangqun Ming <north_sea@qq.com>
|
||||
Date: Thu, 6 Jul 2023 10:04:39 +0000
|
||||
Subject: [PATCH 1/2] drivers: regulator: Supports rk860x
|
||||
|
||||
---
|
||||
drivers/regulator/Kconfig | 11 +
|
||||
drivers/regulator/Makefile | 1 +
|
||||
drivers/regulator/rk860x-regulator.c | 607 +++++++++++++++++++++++++++
|
||||
3 files changed, 619 insertions(+)
|
||||
create mode 100644 drivers/regulator/rk860x-regulator.c
|
||||
|
||||
diff --git a/drivers/regulator/Kconfig b/drivers/regulator/Kconfig
|
||||
index 070e4403c..6a3c00c24 100644
|
||||
--- a/drivers/regulator/Kconfig
|
||||
+++ b/drivers/regulator/Kconfig
|
||||
@@ -1047,6 +1047,17 @@ config REGULATOR_RK808
|
||||
through regulator interface. The device supports multiple DCDC/LDO
|
||||
outputs which can be controlled by i2c communication.
|
||||
|
||||
+config REGULATOR_RK860X
|
||||
+ tristate "Rockchip RK860X Regulator"
|
||||
+ depends on I2C
|
||||
+ select REGMAP_I2C
|
||||
+ help
|
||||
+ This driver supports Rockchip RK860X Digitally Programmable
|
||||
+ Buck Regulator. The RK860X is a step-down switching voltage
|
||||
+ regulator that delivers a digitally programmable output from an
|
||||
+ input voltage supply of 2.5V to 5.5V. The output voltage is
|
||||
+ programmed through an I2C interface.
|
||||
+
|
||||
config REGULATOR_RN5T618
|
||||
tristate "Ricoh RN5T567/618 voltage regulators"
|
||||
depends on MFD_RN5T618
|
||||
diff --git a/drivers/regulator/Makefile b/drivers/regulator/Makefile
|
||||
index 5962307e1..76a156e98 100644
|
||||
--- a/drivers/regulator/Makefile
|
||||
+++ b/drivers/regulator/Makefile
|
||||
@@ -125,6 +125,7 @@ obj-$(CONFIG_REGULATOR_PCF50633) += pcf50633-regulator.o
|
||||
obj-$(CONFIG_REGULATOR_RASPBERRYPI_TOUCHSCREEN_ATTINY) += rpi-panel-attiny-regulator.o
|
||||
obj-$(CONFIG_REGULATOR_RC5T583) += rc5t583-regulator.o
|
||||
obj-$(CONFIG_REGULATOR_RK808) += rk808-regulator.o
|
||||
+obj-$(CONFIG_REGULATOR_RK860X) += rk860x-regulator.o
|
||||
obj-$(CONFIG_REGULATOR_RN5T618) += rn5t618-regulator.o
|
||||
obj-$(CONFIG_REGULATOR_ROHM) += rohm-regulator.o
|
||||
obj-$(CONFIG_REGULATOR_RT4801) += rt4801-regulator.o
|
||||
diff --git a/drivers/regulator/rk860x-regulator.c b/drivers/regulator/rk860x-regulator.c
|
||||
new file mode 100644
|
||||
index 000000000..4596761bd
|
||||
--- /dev/null
|
||||
+++ b/drivers/regulator/rk860x-regulator.c
|
||||
@@ -0,0 +1,607 @@
|
||||
+// SPDX-License-Identifier: GPL-2.0
|
||||
+/*
|
||||
+ * Copyright (c) 2021 Fuzhou Rockchip Electronics Co., Ltd
|
||||
+ */
|
||||
+#include <linux/err.h>
|
||||
+#include <linux/gpio.h>
|
||||
+#include <linux/i2c.h>
|
||||
+#include <linux/module.h>
|
||||
+#include <linux/of_device.h>
|
||||
+#include <linux/of_gpio.h>
|
||||
+#include <linux/param.h>
|
||||
+#include <linux/platform_device.h>
|
||||
+#include <linux/regmap.h>
|
||||
+#include <linux/regulator/driver.h>
|
||||
+#include <linux/regulator/machine.h>
|
||||
+#include <linux/regulator/of_regulator.h>
|
||||
+#include <linux/slab.h>
|
||||
+
|
||||
+/* Voltage setting */
|
||||
+
|
||||
+#define RK860X_VSEL0_A 0x00
|
||||
+#define RK860X_VSEL1_A 0x01
|
||||
+#define RK860X_VSEL0_B 0x06
|
||||
+#define RK860X_VSEL1_B 0x07
|
||||
+#define RK860X_MAX_SET 0x08
|
||||
+
|
||||
+/* Control register */
|
||||
+#define RK860X_CONTROL 0x02
|
||||
+/* IC Type */
|
||||
+#define RK860X_ID1 0x03
|
||||
+/* IC mask version */
|
||||
+#define RK860X_ID2 0x04
|
||||
+/* Monitor register */
|
||||
+#define RK860X_MONITOR 0x05
|
||||
+
|
||||
+/* VSEL bit definitions */
|
||||
+#define VSEL_BUCK_EN BIT(7)
|
||||
+#define VSEL_MODE BIT(6)
|
||||
+#define VSEL_A_NSEL_MASK 0x3F
|
||||
+#define VSEL_B_NSEL_MASK 0xff
|
||||
+
|
||||
+/* Chip ID */
|
||||
+#define DIE_ID 0x0f
|
||||
+#define DIE_REV 0x0f
|
||||
+/* Control bit definitions */
|
||||
+#define CTL_OUTPUT_DISCHG BIT(7)
|
||||
+#define CTL_SLEW_MASK (0x7 << 4)
|
||||
+#define CTL_SLEW_SHIFT 4
|
||||
+#define CTL_RESET BIT(2)
|
||||
+
|
||||
+#define RK860X_NVOLTAGES_64 64
|
||||
+#define RK860X_NVOLTAGES_160 160
|
||||
+
|
||||
+/* IC Type */
|
||||
+enum {
|
||||
+ RK860X_CHIP_ID_00 = 0,
|
||||
+ RK860X_CHIP_ID_01,
|
||||
+ RK860X_CHIP_ID_02,
|
||||
+ RK860X_CHIP_ID_03,
|
||||
+};
|
||||
+
|
||||
+struct rk860x_platform_data {
|
||||
+ struct regulator_init_data *regulator;
|
||||
+ unsigned int slew_rate;
|
||||
+ /* Sleep VSEL ID */
|
||||
+ unsigned int sleep_vsel_id;
|
||||
+ int limit_volt;
|
||||
+ struct gpio_desc *vsel_gpio;
|
||||
+};
|
||||
+
|
||||
+struct rk860x_device_info {
|
||||
+ struct regmap *regmap;
|
||||
+ struct device *dev;
|
||||
+ struct regulator_desc desc;
|
||||
+ struct regulator_dev *rdev;
|
||||
+ struct regulator_init_data *regulator;
|
||||
+ /* IC Type and Rev */
|
||||
+ int chip_id;
|
||||
+ /* Voltage setting register */
|
||||
+ unsigned int vol_reg;
|
||||
+ unsigned int sleep_reg;
|
||||
+ unsigned int en_reg;
|
||||
+ unsigned int sleep_en_reg;
|
||||
+ unsigned int mode_reg;
|
||||
+ unsigned int vol_mask;
|
||||
+ unsigned int mode_mask;
|
||||
+ unsigned int slew_reg;
|
||||
+ unsigned int slew_mask;
|
||||
+ unsigned int slew_shift;
|
||||
+ /* Voltage range and step(linear) */
|
||||
+ unsigned int vsel_min;
|
||||
+ unsigned int vsel_step;
|
||||
+ unsigned int n_voltages;
|
||||
+ /* Voltage slew rate limiting */
|
||||
+ unsigned int slew_rate;
|
||||
+ struct gpio_desc *vsel_gpio;
|
||||
+ unsigned int sleep_vsel_id;
|
||||
+};
|
||||
+
|
||||
+static unsigned int rk860x_map_mode(unsigned int mode)
|
||||
+{
|
||||
+ return mode == REGULATOR_MODE_FAST ?
|
||||
+ REGULATOR_MODE_FAST : REGULATOR_MODE_NORMAL;
|
||||
+}
|
||||
+
|
||||
+static int rk860x_get_voltage(struct regulator_dev *rdev)
|
||||
+{
|
||||
+ struct rk860x_device_info *di = rdev_get_drvdata(rdev);
|
||||
+ unsigned int val;
|
||||
+ int ret;
|
||||
+
|
||||
+ ret = regmap_read(di->regmap, RK860X_MAX_SET, &val);
|
||||
+ if (ret < 0)
|
||||
+ return ret;
|
||||
+ ret = regulator_get_voltage_sel_regmap(rdev);
|
||||
+ if (ret > val)
|
||||
+ return val;
|
||||
+
|
||||
+ return ret;
|
||||
+}
|
||||
+
|
||||
+static int rk860x_set_suspend_voltage(struct regulator_dev *rdev, int uV)
|
||||
+{
|
||||
+ struct rk860x_device_info *di = rdev_get_drvdata(rdev);
|
||||
+ int ret;
|
||||
+
|
||||
+ ret = regulator_map_voltage_linear(rdev, uV, uV);
|
||||
+ if (ret < 0)
|
||||
+ return ret;
|
||||
+ ret = regmap_update_bits(di->regmap, di->sleep_reg,
|
||||
+ di->vol_mask, ret);
|
||||
+ if (ret < 0)
|
||||
+ return ret;
|
||||
+
|
||||
+ return 0;
|
||||
+}
|
||||
+
|
||||
+static int rk860x_set_suspend_enable(struct regulator_dev *rdev)
|
||||
+{
|
||||
+ struct rk860x_device_info *di = rdev_get_drvdata(rdev);
|
||||
+
|
||||
+ return regmap_update_bits(di->regmap, di->sleep_en_reg,
|
||||
+ VSEL_BUCK_EN, VSEL_BUCK_EN);
|
||||
+}
|
||||
+
|
||||
+static int rk860x_set_suspend_disable(struct regulator_dev *rdev)
|
||||
+{
|
||||
+ struct rk860x_device_info *di = rdev_get_drvdata(rdev);
|
||||
+
|
||||
+ return regmap_update_bits(di->regmap, di->sleep_en_reg,
|
||||
+ VSEL_BUCK_EN, 0);
|
||||
+}
|
||||
+
|
||||
+static int rk860x_resume(struct regulator_dev *rdev)
|
||||
+{
|
||||
+ int ret;
|
||||
+
|
||||
+ if (!rdev->constraints->state_mem.changeable)
|
||||
+ return 0;
|
||||
+
|
||||
+ ret = rk860x_set_suspend_enable(rdev);
|
||||
+ if (ret)
|
||||
+ return ret;
|
||||
+
|
||||
+ return regulator_suspend_enable(rdev, PM_SUSPEND_MEM);
|
||||
+}
|
||||
+
|
||||
+static int rk860x_set_enable(struct regulator_dev *rdev)
|
||||
+{
|
||||
+ struct rk860x_device_info *di = rdev_get_drvdata(rdev);
|
||||
+
|
||||
+ if (di->vsel_gpio) {
|
||||
+ gpiod_set_raw_value(di->vsel_gpio, !di->sleep_vsel_id);
|
||||
+ return 0;
|
||||
+ }
|
||||
+
|
||||
+ return regmap_update_bits(di->regmap, di->en_reg,
|
||||
+ VSEL_BUCK_EN, VSEL_BUCK_EN);
|
||||
+}
|
||||
+
|
||||
+static int rk860x_set_disable(struct regulator_dev *rdev)
|
||||
+{
|
||||
+ struct rk860x_device_info *di = rdev_get_drvdata(rdev);
|
||||
+
|
||||
+ if (di->vsel_gpio) {
|
||||
+ gpiod_set_raw_value(di->vsel_gpio, di->sleep_vsel_id);
|
||||
+ return 0;
|
||||
+ }
|
||||
+
|
||||
+ return regmap_update_bits(di->regmap, di->en_reg,
|
||||
+ VSEL_BUCK_EN, 0);
|
||||
+}
|
||||
+
|
||||
+static int rk860x_is_enabled(struct regulator_dev *rdev)
|
||||
+{
|
||||
+ struct rk860x_device_info *di = rdev_get_drvdata(rdev);
|
||||
+ unsigned int val;
|
||||
+ int ret = 0;
|
||||
+
|
||||
+ if (di->vsel_gpio) {
|
||||
+ if (di->sleep_vsel_id)
|
||||
+ return !gpiod_get_raw_value(di->vsel_gpio);
|
||||
+ else
|
||||
+ return gpiod_get_raw_value(di->vsel_gpio);
|
||||
+ }
|
||||
+
|
||||
+ ret = regmap_read(di->regmap, di->en_reg, &val);
|
||||
+ if (ret < 0)
|
||||
+ return ret;
|
||||
+ if (val & VSEL_BUCK_EN)
|
||||
+ return 1;
|
||||
+ else
|
||||
+ return 0;
|
||||
+}
|
||||
+
|
||||
+static int rk860x_set_mode(struct regulator_dev *rdev, unsigned int mode)
|
||||
+{
|
||||
+ struct rk860x_device_info *di = rdev_get_drvdata(rdev);
|
||||
+
|
||||
+ switch (mode) {
|
||||
+ case REGULATOR_MODE_FAST:
|
||||
+ regmap_update_bits(di->regmap, di->mode_reg,
|
||||
+ di->mode_mask, di->mode_mask);
|
||||
+ break;
|
||||
+ case REGULATOR_MODE_NORMAL:
|
||||
+ regmap_update_bits(di->regmap, di->mode_reg, di->mode_mask, 0);
|
||||
+ break;
|
||||
+ default:
|
||||
+ return -EINVAL;
|
||||
+ }
|
||||
+ return 0;
|
||||
+}
|
||||
+
|
||||
+static unsigned int rk860x_get_mode(struct regulator_dev *rdev)
|
||||
+{
|
||||
+ struct rk860x_device_info *di = rdev_get_drvdata(rdev);
|
||||
+ unsigned int val;
|
||||
+ int ret = 0;
|
||||
+
|
||||
+ ret = regmap_read(di->regmap, di->mode_reg, &val);
|
||||
+ if (ret < 0)
|
||||
+ return ret;
|
||||
+ if (val & di->mode_mask)
|
||||
+ return REGULATOR_MODE_FAST;
|
||||
+ else
|
||||
+ return REGULATOR_MODE_NORMAL;
|
||||
+}
|
||||
+
|
||||
+static const int slew_rates[] = {
|
||||
+ 64000,
|
||||
+ 32000,
|
||||
+ 16000,
|
||||
+ 8000,
|
||||
+ 4000,
|
||||
+ 2000,
|
||||
+ 1000,
|
||||
+ 500,
|
||||
+};
|
||||
+
|
||||
+static int rk860x_set_ramp(struct regulator_dev *rdev, int ramp)
|
||||
+{
|
||||
+ struct rk860x_device_info *di = rdev_get_drvdata(rdev);
|
||||
+ int regval = -1, i;
|
||||
+ const int *slew_rate_t;
|
||||
+ int slew_rate_n;
|
||||
+
|
||||
+ slew_rate_t = slew_rates;
|
||||
+ slew_rate_n = ARRAY_SIZE(slew_rates);
|
||||
+
|
||||
+ for (i = 0; i < slew_rate_n; i++) {
|
||||
+ if (ramp <= slew_rate_t[i])
|
||||
+ regval = i;
|
||||
+ else
|
||||
+ break;
|
||||
+ }
|
||||
+
|
||||
+ if (regval < 0) {
|
||||
+ dev_err(di->dev, "unsupported ramp value %d\n", ramp);
|
||||
+ return -EINVAL;
|
||||
+ }
|
||||
+
|
||||
+ return regmap_update_bits(di->regmap, di->slew_reg,
|
||||
+ di->slew_mask, regval << di->slew_shift);
|
||||
+}
|
||||
+
|
||||
+static const struct regulator_ops rk860x_regulator_ops = {
|
||||
+ .set_voltage_sel = regulator_set_voltage_sel_regmap,
|
||||
+ .get_voltage_sel = rk860x_get_voltage,
|
||||
+ .set_voltage_time_sel = regulator_set_voltage_time_sel,
|
||||
+ .map_voltage = regulator_map_voltage_linear,
|
||||
+ .list_voltage = regulator_list_voltage_linear,
|
||||
+ .set_suspend_voltage = rk860x_set_suspend_voltage,
|
||||
+ .enable = rk860x_set_enable,
|
||||
+ .disable = rk860x_set_disable,
|
||||
+ .is_enabled = rk860x_is_enabled,
|
||||
+ .set_mode = rk860x_set_mode,
|
||||
+ .get_mode = rk860x_get_mode,
|
||||
+ .set_ramp_delay = rk860x_set_ramp,
|
||||
+ .set_suspend_enable = rk860x_set_suspend_enable,
|
||||
+ .set_suspend_disable = rk860x_set_suspend_disable,
|
||||
+ .resume = rk860x_resume,
|
||||
+};
|
||||
+
|
||||
+/* For 00,01 options:
|
||||
+ * VOUT = 0.7125V + NSELx * 12.5mV, from 0.7125 to 1.5V.
|
||||
+ * For 02,03 options:
|
||||
+ * VOUT = 0.5V + NSELx * 6.25mV, from 0.5 to 1.5V.
|
||||
+ */
|
||||
+static int rk860x_device_setup(struct rk860x_device_info *di,
|
||||
+ struct rk860x_platform_data *pdata)
|
||||
+{
|
||||
+ int ret = 0;
|
||||
+ u32 val = 0;
|
||||
+
|
||||
+ switch (di->chip_id) {
|
||||
+ case RK860X_CHIP_ID_00:
|
||||
+ case RK860X_CHIP_ID_01:
|
||||
+ di->vsel_min = 712500;
|
||||
+ di->vsel_step = 12500;
|
||||
+ di->n_voltages = RK860X_NVOLTAGES_64;
|
||||
+ di->vol_mask = VSEL_A_NSEL_MASK;
|
||||
+ if (di->sleep_vsel_id) {
|
||||
+ di->sleep_reg = RK860X_VSEL1_A;
|
||||
+ di->vol_reg = RK860X_VSEL0_A;
|
||||
+ di->mode_reg = RK860X_VSEL0_A;
|
||||
+ di->en_reg = RK860X_VSEL0_A;
|
||||
+ di->sleep_en_reg = RK860X_VSEL1_A;
|
||||
+ } else {
|
||||
+ di->sleep_reg = RK860X_VSEL0_A;
|
||||
+ di->vol_reg = RK860X_VSEL1_A;
|
||||
+ di->mode_reg = RK860X_VSEL1_A;
|
||||
+ di->en_reg = RK860X_VSEL1_A;
|
||||
+ di->sleep_en_reg = RK860X_VSEL0_A;
|
||||
+ }
|
||||
+ break;
|
||||
+ case RK860X_CHIP_ID_02:
|
||||
+ case RK860X_CHIP_ID_03:
|
||||
+ di->vsel_min = 500000;
|
||||
+ di->vsel_step = 6250;
|
||||
+ di->n_voltages = RK860X_NVOLTAGES_160;
|
||||
+ di->vol_mask = VSEL_B_NSEL_MASK;
|
||||
+ if (di->sleep_vsel_id) {
|
||||
+ di->sleep_reg = RK860X_VSEL1_B;
|
||||
+ di->vol_reg = RK860X_VSEL0_B;
|
||||
+ di->mode_reg = RK860X_VSEL0_A;
|
||||
+ di->en_reg = RK860X_VSEL0_A;
|
||||
+ di->sleep_en_reg = RK860X_VSEL1_A;
|
||||
+ } else {
|
||||
+ di->sleep_reg = RK860X_VSEL0_B;
|
||||
+ di->vol_reg = RK860X_VSEL1_B;
|
||||
+ di->mode_reg = RK860X_VSEL1_A;
|
||||
+ di->en_reg = RK860X_VSEL1_A;
|
||||
+ di->sleep_en_reg = RK860X_VSEL0_A;
|
||||
+ }
|
||||
+ break;
|
||||
+ default:
|
||||
+ dev_err(di->dev, "Chip ID %d not supported!\n", di->chip_id);
|
||||
+ return -EINVAL;
|
||||
+ }
|
||||
+
|
||||
+ di->mode_mask = VSEL_MODE;
|
||||
+ di->slew_reg = RK860X_CONTROL;
|
||||
+ di->slew_mask = CTL_SLEW_MASK;
|
||||
+ di->slew_shift = CTL_SLEW_SHIFT;
|
||||
+
|
||||
+ if (pdata->limit_volt) {
|
||||
+ if (pdata->limit_volt < di->vsel_min ||
|
||||
+ pdata->limit_volt > 1500000)
|
||||
+ pdata->limit_volt = 1500000;
|
||||
+ val = (pdata->limit_volt - di->vsel_min) / di->vsel_step;
|
||||
+ ret = regmap_write(di->regmap, RK860X_MAX_SET, val);
|
||||
+ if (ret < 0) {
|
||||
+ dev_err(di->dev, "Failed to set limit voltage!\n");
|
||||
+ return ret;
|
||||
+ }
|
||||
+ }
|
||||
+
|
||||
+ return ret;
|
||||
+}
|
||||
+
|
||||
+static int rk860x_regulator_register(struct rk860x_device_info *di,
|
||||
+ struct regulator_config *config)
|
||||
+{
|
||||
+ struct regulator_desc *rdesc = &di->desc;
|
||||
+
|
||||
+ rdesc->name = "rk860x-reg";
|
||||
+ rdesc->supply_name = "vin";
|
||||
+ rdesc->ops = &rk860x_regulator_ops;
|
||||
+ rdesc->type = REGULATOR_VOLTAGE;
|
||||
+ rdesc->n_voltages = di->n_voltages;
|
||||
+ rdesc->enable_reg = di->en_reg;
|
||||
+ rdesc->enable_mask = VSEL_BUCK_EN;
|
||||
+ rdesc->min_uV = di->vsel_min;
|
||||
+ rdesc->uV_step = di->vsel_step;
|
||||
+ rdesc->vsel_reg = di->vol_reg;
|
||||
+ rdesc->vsel_mask = di->vol_mask;
|
||||
+ rdesc->owner = THIS_MODULE;
|
||||
+ rdesc->enable_time = 400;
|
||||
+
|
||||
+ di->rdev = devm_regulator_register(di->dev, &di->desc, config);
|
||||
+ return PTR_ERR_OR_ZERO(di->rdev);
|
||||
+}
|
||||
+
|
||||
+static const struct regmap_config rk860x_regmap_config = {
|
||||
+ .reg_bits = 8,
|
||||
+ .val_bits = 8,
|
||||
+};
|
||||
+
|
||||
+static struct rk860x_platform_data *
|
||||
+rk860x_parse_dt(struct device *dev, struct device_node *np,
|
||||
+ const struct regulator_desc *desc)
|
||||
+{
|
||||
+ struct rk860x_platform_data *pdata;
|
||||
+ int ret, flag, limit_volt;
|
||||
+ u32 tmp;
|
||||
+
|
||||
+ pdata = devm_kzalloc(dev, sizeof(*pdata), GFP_KERNEL);
|
||||
+ if (!pdata)
|
||||
+ return NULL;
|
||||
+
|
||||
+ pdata->regulator = of_get_regulator_init_data(dev, np, desc);
|
||||
+ pdata->regulator->constraints.initial_state = PM_SUSPEND_MEM;
|
||||
+
|
||||
+ if (!(of_property_read_u32(np, "limit-microvolt", &limit_volt)))
|
||||
+ pdata->limit_volt = limit_volt;
|
||||
+
|
||||
+ ret = of_property_read_u32(np, "rockchip,suspend-voltage-selector",
|
||||
+ &tmp);
|
||||
+ if (!ret)
|
||||
+ pdata->sleep_vsel_id = tmp;
|
||||
+
|
||||
+ if (pdata->sleep_vsel_id)
|
||||
+ flag = GPIOD_OUT_LOW;
|
||||
+ else
|
||||
+ flag = GPIOD_OUT_HIGH;
|
||||
+
|
||||
+ pdata->vsel_gpio = devm_gpiod_get_index_optional(dev, "vsel", 0, flag);
|
||||
+ if (IS_ERR(pdata->vsel_gpio)) {
|
||||
+ ret = PTR_ERR(pdata->vsel_gpio);
|
||||
+ dev_err(dev, "failed to get vesl gpio (%d)\n", ret);
|
||||
+ pdata->vsel_gpio = NULL;
|
||||
+ }
|
||||
+
|
||||
+ return pdata;
|
||||
+}
|
||||
+
|
||||
+static const struct of_device_id rk860x_dt_ids[] = {
|
||||
+ {
|
||||
+ .compatible = "rockchip,rk8600",
|
||||
+ .data = (void *)RK860X_CHIP_ID_00
|
||||
+ },
|
||||
+ {
|
||||
+ .compatible = "rockchip,rk8601",
|
||||
+ .data = (void *)RK860X_CHIP_ID_01
|
||||
+ },
|
||||
+ {
|
||||
+ .compatible = "rockchip,rk8602",
|
||||
+ .data = (void *)RK860X_CHIP_ID_02
|
||||
+ },
|
||||
+ {
|
||||
+ .compatible = "rockchip,rk8603",
|
||||
+ .data = (void *)RK860X_CHIP_ID_03
|
||||
+ },
|
||||
+
|
||||
+ { }
|
||||
+};
|
||||
+MODULE_DEVICE_TABLE(of, rk860x_dt_ids);
|
||||
+
|
||||
+static int rk860x_regulator_probe(struct i2c_client *client,
|
||||
+ const struct i2c_device_id *id)
|
||||
+{
|
||||
+ struct device_node *np = client->dev.of_node;
|
||||
+ struct rk860x_device_info *di;
|
||||
+ struct rk860x_platform_data *pdata;
|
||||
+ struct regulator_config config = { };
|
||||
+ unsigned int val;
|
||||
+ int ret;
|
||||
+
|
||||
+ di = devm_kzalloc(&client->dev, sizeof(*di), GFP_KERNEL);
|
||||
+ if (!di)
|
||||
+ return -ENOMEM;
|
||||
+
|
||||
+ di->desc.of_map_mode = rk860x_map_mode;
|
||||
+
|
||||
+ pdata = dev_get_platdata(&client->dev);
|
||||
+ if (!pdata)
|
||||
+ pdata = rk860x_parse_dt(&client->dev, np, &di->desc);
|
||||
+
|
||||
+ if (!pdata || !pdata->regulator) {
|
||||
+ dev_err(&client->dev, "Platform data not found!\n");
|
||||
+ return -ENODEV;
|
||||
+ }
|
||||
+
|
||||
+ di->vsel_gpio = pdata->vsel_gpio;
|
||||
+ di->sleep_vsel_id = pdata->sleep_vsel_id;
|
||||
+
|
||||
+ di->regulator = pdata->regulator;
|
||||
+ if (client->dev.of_node) {
|
||||
+ di->chip_id =
|
||||
+ (unsigned long)of_device_get_match_data(&client->dev);
|
||||
+ } else {
|
||||
+ /* if no ramp constraint set, get the pdata ramp_delay */
|
||||
+ if (!di->regulator->constraints.ramp_delay) {
|
||||
+ int slew_idx = (pdata->slew_rate & 0x7)
|
||||
+ ? pdata->slew_rate : 0;
|
||||
+
|
||||
+ di->regulator->constraints.ramp_delay =
|
||||
+ slew_rates[slew_idx];
|
||||
+ }
|
||||
+ di->chip_id = id->driver_data;
|
||||
+ }
|
||||
+
|
||||
+ di->regmap = devm_regmap_init_i2c(client, &rk860x_regmap_config);
|
||||
+ if (IS_ERR(di->regmap)) {
|
||||
+ dev_err(&client->dev, "Failed to allocate regmap!\n");
|
||||
+ return PTR_ERR(di->regmap);
|
||||
+ }
|
||||
+ di->dev = &client->dev;
|
||||
+ i2c_set_clientdata(client, di);
|
||||
+ /* Get chip ID */
|
||||
+ ret = regmap_read(di->regmap, RK860X_ID1, &val);
|
||||
+ if (ret < 0) {
|
||||
+ dev_err(&client->dev, "Failed to get chip ID!\n");
|
||||
+ return ret;
|
||||
+ }
|
||||
+
|
||||
+ switch (di->chip_id) {
|
||||
+ case RK860X_CHIP_ID_00:
|
||||
+ case RK860X_CHIP_ID_01:
|
||||
+ if ((val & DIE_ID) != 0x8) {
|
||||
+ dev_err(&client->dev, "Failed to match chip ID!\n");
|
||||
+ return -EINVAL;
|
||||
+ }
|
||||
+ break;
|
||||
+ case RK860X_CHIP_ID_02:
|
||||
+ case RK860X_CHIP_ID_03:
|
||||
+ if ((val & DIE_ID) != 0xa) {
|
||||
+ dev_err(&client->dev, "Failed to match chip ID!\n");
|
||||
+ return -EINVAL;
|
||||
+ }
|
||||
+ break;
|
||||
+ default:
|
||||
+ return -EINVAL;
|
||||
+ }
|
||||
+
|
||||
+ /* Device init */
|
||||
+ ret = rk860x_device_setup(di, pdata);
|
||||
+ if (ret < 0) {
|
||||
+ dev_err(&client->dev, "Failed to setup device!\n");
|
||||
+ return ret;
|
||||
+ }
|
||||
+ /* Register regulator */
|
||||
+ config.dev = di->dev;
|
||||
+ config.init_data = di->regulator;
|
||||
+ config.regmap = di->regmap;
|
||||
+ config.driver_data = di;
|
||||
+ config.of_node = np;
|
||||
+
|
||||
+ ret = rk860x_regulator_register(di, &config);
|
||||
+ if (ret < 0)
|
||||
+ dev_err(&client->dev, "Failed to register regulator!\n");
|
||||
+
|
||||
+ return ret;
|
||||
+}
|
||||
+
|
||||
+static void rk860x_regulator_shutdown(struct i2c_client *client)
|
||||
+{
|
||||
+ struct rk860x_device_info *di;
|
||||
+ int ret;
|
||||
+
|
||||
+ di = i2c_get_clientdata(client);
|
||||
+
|
||||
+ dev_info(di->dev, "rk860..... reset\n");
|
||||
+
|
||||
+ ret = regmap_update_bits(di->regmap, di->slew_reg,
|
||||
+ CTL_RESET, CTL_RESET);
|
||||
+
|
||||
+ if (ret < 0)
|
||||
+ dev_err(di->dev, "force rk860x_reset error! ret=%d\n", ret);
|
||||
+ else
|
||||
+ dev_info(di->dev, "force rk860x_reset ok!\n");
|
||||
+}
|
||||
+
|
||||
+static const struct i2c_device_id rk860x_id[] = {
|
||||
+ { .name = "rk8600", .driver_data = RK860X_CHIP_ID_00 },
|
||||
+ { .name = "rk8601", .driver_data = RK860X_CHIP_ID_01 },
|
||||
+ { .name = "rk8602", .driver_data = RK860X_CHIP_ID_02 },
|
||||
+ { .name = "rk8603", .driver_data = RK860X_CHIP_ID_03 },
|
||||
+ {},
|
||||
+};
|
||||
+MODULE_DEVICE_TABLE(i2c, rk860x_id);
|
||||
+
|
||||
+static struct i2c_driver rk860x_regulator_driver = {
|
||||
+ .driver = {
|
||||
+ .name = "rk860-regulator",
|
||||
+ .of_match_table = of_match_ptr(rk860x_dt_ids),
|
||||
+ },
|
||||
+ .probe = rk860x_regulator_probe,
|
||||
+ .shutdown = rk860x_regulator_shutdown,
|
||||
+ .id_table = rk860x_id,
|
||||
+};
|
||||
+
|
||||
+module_i2c_driver(rk860x_regulator_driver);
|
||||
+
|
||||
+MODULE_AUTHOR("Elaine Zhang <zhangqing@rock-chips.com>");
|
||||
+MODULE_DESCRIPTION("rk860x regulator driver");
|
||||
+MODULE_LICENSE("GPL v2");
|
||||
--
|
||||
2.25.1
|
||||
|
@ -0,0 +1,714 @@
|
||||
From 2a76efca88402072b61e4cb83d6707400da8dfae Mon Sep 17 00:00:00 2001
|
||||
From: Zhangqun Ming <north_sea@qq.com>
|
||||
Date: Thu, 6 Jul 2023 10:05:04 +0000
|
||||
Subject: [PATCH 2/2] arm64: dts: rockchip: Add NabuCasa Green board
|
||||
|
||||
---
|
||||
arch/arm64/boot/dts/rockchip/Makefile | 1 +
|
||||
.../boot/dts/rockchip/rk3566-ha-green.dts | 685 ++++++++++++++++++
|
||||
2 files changed, 686 insertions(+)
|
||||
create mode 100644 arch/arm64/boot/dts/rockchip/rk3566-ha-green.dts
|
||||
|
||||
diff --git a/arch/arm64/boot/dts/rockchip/Makefile b/arch/arm64/boot/dts/rockchip/Makefile
|
||||
index 8c15593c0..997051975 100644
|
||||
--- a/arch/arm64/boot/dts/rockchip/Makefile
|
||||
+++ b/arch/arm64/boot/dts/rockchip/Makefile
|
||||
@@ -72,3 +72,4 @@ dtb-$(CONFIG_ARCH_ROCKCHIP) += rk3566-soquartz-cm4.dtb
|
||||
dtb-$(CONFIG_ARCH_ROCKCHIP) += rk3568-bpi-r2-pro.dtb
|
||||
dtb-$(CONFIG_ARCH_ROCKCHIP) += rk3568-evb1-v10.dtb
|
||||
dtb-$(CONFIG_ARCH_ROCKCHIP) += rk3568-rock-3a.dtb
|
||||
+dtb-$(CONFIG_ARCH_ROCKCHIP) += rk3566-ha-green.dtb
|
||||
diff --git a/arch/arm64/boot/dts/rockchip/rk3566-ha-green.dts b/arch/arm64/boot/dts/rockchip/rk3566-ha-green.dts
|
||||
new file mode 100644
|
||||
index 000000000..d0830df48
|
||||
--- /dev/null
|
||||
+++ b/arch/arm64/boot/dts/rockchip/rk3566-ha-green.dts
|
||||
@@ -0,0 +1,685 @@
|
||||
+// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
|
||||
+/*
|
||||
+ * Copyright (c) 2023 Seeed Co., Ltd.
|
||||
+ *
|
||||
+ */
|
||||
+
|
||||
+/dts-v1/;
|
||||
+#include <dt-bindings/gpio/gpio.h>
|
||||
+#include <dt-bindings/leds/common.h>
|
||||
+#include <dt-bindings/pinctrl/rockchip.h>
|
||||
+#include <dt-bindings/soc/rockchip,vop2.h>
|
||||
+#include "rk3566.dtsi"
|
||||
+
|
||||
+/ {
|
||||
+ model = "Home Assistant Green";
|
||||
+ compatible = "rockchip,rk3566-ha-green", "rockchip,rk3566";
|
||||
+
|
||||
+ aliases {
|
||||
+ ethernet0 = &gmac1;
|
||||
+ mmc0 = &sdhci;
|
||||
+ mmc1 = &sdmmc0;
|
||||
+ };
|
||||
+
|
||||
+ chosen {
|
||||
+ stdout-path = "serial2:1500000n8";
|
||||
+ };
|
||||
+
|
||||
+ dc_12v: dc-12v-regulator {
|
||||
+ compatible = "regulator-fixed";
|
||||
+ regulator-name = "dc_12v";
|
||||
+ regulator-always-on;
|
||||
+ regulator-boot-on;
|
||||
+ regulator-min-microvolt = <12000000>;
|
||||
+ regulator-max-microvolt = <12000000>;
|
||||
+ };
|
||||
+
|
||||
+ hdmi-con {
|
||||
+ compatible = "hdmi-connector";
|
||||
+ type = "a";
|
||||
+
|
||||
+ port {
|
||||
+ hdmi_con_in: endpoint {
|
||||
+ remote-endpoint = <&hdmi_out_con>;
|
||||
+ };
|
||||
+ };
|
||||
+ };
|
||||
+
|
||||
+ leds {
|
||||
+ compatible = "gpio-leds";
|
||||
+
|
||||
+ led_power: led-0 {
|
||||
+ gpios = <&gpio0 RK_PB6 GPIO_ACTIVE_HIGH>;
|
||||
+ function = LED_FUNCTION_POWER;
|
||||
+ color = <LED_COLOR_ID_RED>;
|
||||
+ default-state = "keep";
|
||||
+ linux,default-trigger = "default-on";
|
||||
+ pinctrl-names = "default";
|
||||
+ pinctrl-0 = <&led_power_pin>;
|
||||
+ };
|
||||
+ led_act: led-1 {
|
||||
+ gpios = <&gpio0 RK_PB7 GPIO_ACTIVE_HIGH>;
|
||||
+ function = LED_FUNCTION_ACTIVITY;
|
||||
+ color = <LED_COLOR_ID_GREEN>;
|
||||
+ linux,default-trigger = "activity";
|
||||
+ pinctrl-names = "default";
|
||||
+ pinctrl-0 = <&led_act_pin>;
|
||||
+ };
|
||||
+ led_user: led-2 {
|
||||
+ gpios = <&gpio0 RK_PC5 GPIO_ACTIVE_HIGH>;
|
||||
+ function = LED_FUNCTION_HEARTBEAT;
|
||||
+ color = <LED_COLOR_ID_YELLOW>;
|
||||
+ linux,default-trigger = "heartbeat";
|
||||
+ pinctrl-names = "default";
|
||||
+ pinctrl-0 = <&led_usr_pin>;
|
||||
+ };
|
||||
+ };
|
||||
+
|
||||
+ rk809-sound {
|
||||
+ compatible = "simple-audio-card";
|
||||
+ simple-audio-card,name = "Analog RK817";
|
||||
+ simple-audio-card,format = "i2s";
|
||||
+ simple-audio-card,mclk-fs = <256>;
|
||||
+ simple-audio-card,widgets =
|
||||
+ "Headphone", "Headphones",
|
||||
+ "Speaker", "Speaker";
|
||||
+ simple-audio-card,routing =
|
||||
+ "Headphones", "HPOL",
|
||||
+ "Headphones", "HPOR",
|
||||
+ "Speaker", "SPKO";
|
||||
+
|
||||
+ simple-audio-card,cpu {
|
||||
+ sound-dai = <&i2s1_8ch>;
|
||||
+ };
|
||||
+
|
||||
+ simple-audio-card,codec {
|
||||
+ sound-dai = <&rk809>;
|
||||
+ };
|
||||
+ };
|
||||
+
|
||||
+ vcc3v3_sys: vcc3v3-sys-regulator {
|
||||
+ compatible = "regulator-fixed";
|
||||
+ regulator-name = "vcc3v3_sys";
|
||||
+ regulator-always-on;
|
||||
+ regulator-boot-on;
|
||||
+ regulator-min-microvolt = <3300000>;
|
||||
+ regulator-max-microvolt = <3300000>;
|
||||
+ vin-supply = <&dc_12v>;
|
||||
+ };
|
||||
+
|
||||
+ vcc5v0_sys: vcc5v0-sys-regulator {
|
||||
+ compatible = "regulator-fixed";
|
||||
+ regulator-name = "vcc5v0_sys";
|
||||
+ regulator-always-on;
|
||||
+ regulator-boot-on;
|
||||
+ regulator-min-microvolt = <5000000>;
|
||||
+ regulator-max-microvolt = <5000000>;
|
||||
+ vin-supply = <&dc_12v>;
|
||||
+ };
|
||||
+
|
||||
+ vcc5v0_usb_host: vcc5v0-usb-host-regulator {
|
||||
+ compatible = "regulator-fixed";
|
||||
+ regulator-name = "vcc5v0_usb_host";
|
||||
+ enable-active-high;
|
||||
+ gpio = <&gpio0 RK_PA6 GPIO_ACTIVE_HIGH>;
|
||||
+ pinctrl-names = "default";
|
||||
+ pinctrl-0 = <&vcc5v0_usb_host_en_pin>;
|
||||
+ regulator-min-microvolt = <5000000>;
|
||||
+ regulator-max-microvolt = <5000000>;
|
||||
+ vin-supply = <&vcc5v0_sys>;
|
||||
+ };
|
||||
+};
|
||||
+
|
||||
+&cpu0 {
|
||||
+ cpu-supply = <&vdd_cpu>;
|
||||
+};
|
||||
+
|
||||
+&cpu1 {
|
||||
+ cpu-supply = <&vdd_cpu>;
|
||||
+};
|
||||
+
|
||||
+&cpu2 {
|
||||
+ cpu-supply = <&vdd_cpu>;
|
||||
+};
|
||||
+
|
||||
+&cpu3 {
|
||||
+ cpu-supply = <&vdd_cpu>;
|
||||
+};
|
||||
+
|
||||
+&gmac1 {
|
||||
+ assigned-clocks = <&cru SCLK_GMAC1_RX_TX>, <&cru SCLK_GMAC1>;
|
||||
+ assigned-clock-parents = <&cru SCLK_GMAC1_RGMII_SPEED>;
|
||||
+ assigned-clock-rates = <0>, <125000000>;
|
||||
+ clock_in_out = "output";
|
||||
+
|
||||
+ snps,reset-gpio = <&gpio4 RK_PC2 GPIO_ACTIVE_LOW>;
|
||||
+ snps,reset-active-low;
|
||||
+ /* Reset time is 20ms, 100ms for rtl8211f */
|
||||
+ snps,reset-delays-us = <0 20000 100000>;
|
||||
+
|
||||
+ phy-handle = <&rgmii_phy1>;
|
||||
+ phy-mode = "rgmii";
|
||||
+
|
||||
+ pinctrl-names = "default";
|
||||
+ pinctrl-0 = <&gmac1m0_miim
|
||||
+ &gmac1m0_tx_bus2
|
||||
+ &gmac1m0_rx_bus2
|
||||
+ &gmac1m0_rgmii_clk
|
||||
+ &gmac1m0_rgmii_bus>;
|
||||
+ status = "okay";
|
||||
+
|
||||
+ tx_delay = <0x47>;
|
||||
+ rx_delay = <0x27>;
|
||||
+};
|
||||
+
|
||||
+&gpu {
|
||||
+ mali-supply = <&vdd_gpu>;
|
||||
+ status = "okay";
|
||||
+};
|
||||
+
|
||||
+&hdmi {
|
||||
+ avdd-0v9-supply = <&vdda0v9_image>;
|
||||
+ avdd-1v8-supply = <&vcca1v8_image>;
|
||||
+ status = "okay";
|
||||
+};
|
||||
+
|
||||
+&hdmi_in {
|
||||
+ hdmi_in_vp0: endpoint {
|
||||
+ remote-endpoint = <&vp0_out_hdmi>;
|
||||
+ };
|
||||
+};
|
||||
+
|
||||
+&hdmi_out {
|
||||
+ hdmi_out_con: endpoint {
|
||||
+ remote-endpoint = <&hdmi_con_in>;
|
||||
+ };
|
||||
+};
|
||||
+
|
||||
+&hdmi_sound {
|
||||
+ status = "okay";
|
||||
+};
|
||||
+
|
||||
+&i2c0 {
|
||||
+ status = "okay";
|
||||
+
|
||||
+ vdd_cpu: rk8601@41 {
|
||||
+ compatible = "rockchip,rk8601";
|
||||
+ reg = <0x41>;
|
||||
+ vin-supply = <&vcc5v0_sys>;
|
||||
+ regulator-compatible = "rk860x-reg";
|
||||
+ regulator-name = "vdd_cpu";
|
||||
+ regulator-min-microvolt = <712500>;
|
||||
+ regulator-max-microvolt = <1500000>;
|
||||
+ regulator-ramp-delay = <2300>;
|
||||
+ rockchip,suspend-voltage-selector = <1>;
|
||||
+ regulator-boot-on;
|
||||
+ regulator-always-on;
|
||||
+ regulator-state-mem {
|
||||
+ regulator-off-in-suspend;
|
||||
+ };
|
||||
+ };
|
||||
+
|
||||
+ rk809: pmic@20 {
|
||||
+ compatible = "rockchip,rk809";
|
||||
+ reg = <0x20>;
|
||||
+ interrupt-parent = <&gpio0>;
|
||||
+ interrupts = <RK_PA3 IRQ_TYPE_LEVEL_LOW>;
|
||||
+ assigned-clocks = <&cru I2S1_MCLKOUT_TX>;
|
||||
+ assigned-clock-parents = <&cru CLK_I2S1_8CH_TX>;
|
||||
+ #clock-cells = <1>;
|
||||
+ clock-names = "mclk";
|
||||
+ clocks = <&cru I2S1_MCLKOUT_TX>;
|
||||
+ pinctrl-names = "default";
|
||||
+ pinctrl-0 = <&pmic_int_l>, <&i2s1m0_mclk>;
|
||||
+
|
||||
+ rockchip,system-power-controller;
|
||||
+ #sound-dai-cells = <0>;
|
||||
+ wakeup-source;
|
||||
+
|
||||
+ vcc1-supply = <&vcc3v3_sys>;
|
||||
+ vcc2-supply = <&vcc3v3_sys>;
|
||||
+ vcc3-supply = <&vcc3v3_sys>;
|
||||
+ vcc4-supply = <&vcc3v3_sys>;
|
||||
+ vcc5-supply = <&vcc3v3_sys>;
|
||||
+ vcc6-supply = <&vcc3v3_sys>;
|
||||
+ vcc7-supply = <&vcc3v3_sys>;
|
||||
+ vcc8-supply = <&vcc3v3_sys>;
|
||||
+ vcc9-supply = <&vcc3v3_sys>;
|
||||
+
|
||||
+ regulators {
|
||||
+ vdd_logic: DCDC_REG1 {
|
||||
+ regulator-name = "vdd_logic";
|
||||
+ regulator-always-on;
|
||||
+ regulator-boot-on;
|
||||
+ regulator-init-microvolt = <900000>;
|
||||
+ regulator-initial-mode = <0x2>;
|
||||
+ regulator-min-microvolt = <500000>;
|
||||
+ regulator-max-microvolt = <1350000>;
|
||||
+ regulator-ramp-delay = <6001>;
|
||||
+
|
||||
+ regulator-state-mem {
|
||||
+ regulator-off-in-suspend;
|
||||
+ };
|
||||
+ };
|
||||
+
|
||||
+ vdd_gpu: DCDC_REG2 {
|
||||
+ regulator-name = "vdd_gpu";
|
||||
+ regulator-always-on;
|
||||
+ regulator-init-microvolt = <900000>;
|
||||
+ regulator-initial-mode = <0x2>;
|
||||
+ regulator-min-microvolt = <500000>;
|
||||
+ regulator-max-microvolt = <1350000>;
|
||||
+ regulator-ramp-delay = <6001>;
|
||||
+
|
||||
+ regulator-state-mem {
|
||||
+ regulator-off-in-suspend;
|
||||
+ };
|
||||
+ };
|
||||
+
|
||||
+ vcc_ddr: DCDC_REG3 {
|
||||
+ regulator-name = "vcc_ddr";
|
||||
+ regulator-always-on;
|
||||
+ regulator-boot-on;
|
||||
+ regulator-initial-mode = <0x2>;
|
||||
+
|
||||
+ regulator-state-mem {
|
||||
+ regulator-on-in-suspend;
|
||||
+ };
|
||||
+ };
|
||||
+
|
||||
+ vdd_npu: DCDC_REG4 {
|
||||
+ regulator-name = "vdd_npu";
|
||||
+ regulator-init-microvolt = <900000>;
|
||||
+ regulator-initial-mode = <0x2>;
|
||||
+ regulator-min-microvolt = <500000>;
|
||||
+ regulator-max-microvolt = <1350000>;
|
||||
+ regulator-ramp-delay = <6001>;
|
||||
+
|
||||
+ regulator-state-mem {
|
||||
+ regulator-off-in-suspend;
|
||||
+ };
|
||||
+ };
|
||||
+
|
||||
+ vcc_1v8: DCDC_REG5 {
|
||||
+ regulator-name = "vcc_1v8";
|
||||
+ regulator-always-on;
|
||||
+ regulator-boot-on;
|
||||
+ regulator-min-microvolt = <1800000>;
|
||||
+ regulator-max-microvolt = <1800000>;
|
||||
+
|
||||
+ regulator-state-mem {
|
||||
+ regulator-off-in-suspend;
|
||||
+ };
|
||||
+ };
|
||||
+
|
||||
+ vdda0v9_image: LDO_REG1 {
|
||||
+ regulator-name = "vdda0v9_image";
|
||||
+ regulator-always-on;
|
||||
+ regulator-min-microvolt = <900000>;
|
||||
+ regulator-max-microvolt = <900000>;
|
||||
+
|
||||
+ regulator-state-mem {
|
||||
+ regulator-off-in-suspend;
|
||||
+ };
|
||||
+ };
|
||||
+
|
||||
+ vdda_0v9: LDO_REG2 {
|
||||
+ regulator-name = "vdda_0v9";
|
||||
+ regulator-always-on;
|
||||
+ regulator-boot-on;
|
||||
+ regulator-min-microvolt = <900000>;
|
||||
+ regulator-max-microvolt = <900000>;
|
||||
+
|
||||
+ regulator-state-mem {
|
||||
+ regulator-off-in-suspend;
|
||||
+ };
|
||||
+ };
|
||||
+
|
||||
+ vdda0v9_pmu: LDO_REG3 {
|
||||
+ regulator-name = "vdda0v9_pmu";
|
||||
+ regulator-always-on;
|
||||
+ regulator-boot-on;
|
||||
+ regulator-min-microvolt = <900000>;
|
||||
+ regulator-max-microvolt = <900000>;
|
||||
+
|
||||
+ regulator-state-mem {
|
||||
+ regulator-on-in-suspend;
|
||||
+ regulator-suspend-microvolt = <900000>;
|
||||
+ };
|
||||
+ };
|
||||
+
|
||||
+ vccio_acodec: LDO_REG4 {
|
||||
+ regulator-name = "vccio_acodec";
|
||||
+ regulator-always-on;
|
||||
+ regulator-boot-on;
|
||||
+ regulator-min-microvolt = <3300000>;
|
||||
+ regulator-max-microvolt = <3300000>;
|
||||
+
|
||||
+ regulator-state-mem {
|
||||
+ regulator-off-in-suspend;
|
||||
+ };
|
||||
+ };
|
||||
+
|
||||
+ vccio_sd: LDO_REG5 {
|
||||
+ regulator-name = "vccio_sd";
|
||||
+ regulator-min-microvolt = <1800000>;
|
||||
+ regulator-max-microvolt = <3300000>;
|
||||
+
|
||||
+ regulator-state-mem {
|
||||
+ regulator-off-in-suspend;
|
||||
+ };
|
||||
+ };
|
||||
+
|
||||
+ vcc3v3_pmu: LDO_REG6 {
|
||||
+ regulator-name = "vcc3v3_pmu";
|
||||
+ regulator-always-on;
|
||||
+ regulator-boot-on;
|
||||
+ regulator-min-microvolt = <3300000>;
|
||||
+ regulator-max-microvolt = <3300000>;
|
||||
+
|
||||
+ regulator-state-mem {
|
||||
+ regulator-on-in-suspend;
|
||||
+ regulator-suspend-microvolt = <3300000>;
|
||||
+ };
|
||||
+ };
|
||||
+
|
||||
+ vcca_1v8: LDO_REG7 {
|
||||
+ regulator-name = "vcca_1v8";
|
||||
+ regulator-always-on;
|
||||
+ regulator-boot-on;
|
||||
+ regulator-min-microvolt = <1800000>;
|
||||
+ regulator-max-microvolt = <1800000>;
|
||||
+
|
||||
+ regulator-state-mem {
|
||||
+ regulator-off-in-suspend;
|
||||
+ };
|
||||
+ };
|
||||
+
|
||||
+ vcca1v8_pmu: LDO_REG8 {
|
||||
+ regulator-name = "vcca1v8_pmu";
|
||||
+ regulator-always-on;
|
||||
+ regulator-boot-on;
|
||||
+ regulator-min-microvolt = <1800000>;
|
||||
+ regulator-max-microvolt = <1800000>;
|
||||
+
|
||||
+ regulator-state-mem {
|
||||
+ regulator-on-in-suspend;
|
||||
+ regulator-suspend-microvolt = <1800000>;
|
||||
+ };
|
||||
+ };
|
||||
+
|
||||
+ vcca1v8_image: LDO_REG9 {
|
||||
+ regulator-name = "vcca1v8_image";
|
||||
+ regulator-always-on;
|
||||
+ regulator-min-microvolt = <1800000>;
|
||||
+ regulator-max-microvolt = <1800000>;
|
||||
+
|
||||
+ regulator-state-mem {
|
||||
+ regulator-off-in-suspend;
|
||||
+ };
|
||||
+ };
|
||||
+
|
||||
+ vcc_3v3: SWITCH_REG1 {
|
||||
+ regulator-name = "vcc_3v3";
|
||||
+ regulator-always-on;
|
||||
+ regulator-boot-on;
|
||||
+
|
||||
+ regulator-state-mem {
|
||||
+ regulator-off-in-suspend;
|
||||
+ };
|
||||
+ };
|
||||
+
|
||||
+ vcc3v3_sd: SWITCH_REG2 {
|
||||
+ regulator-name = "vcc3v3_sd";
|
||||
+
|
||||
+ regulator-state-mem {
|
||||
+ regulator-off-in-suspend;
|
||||
+ };
|
||||
+ };
|
||||
+ };
|
||||
+ };
|
||||
+};
|
||||
+
|
||||
+&i2c1 {
|
||||
+ clock-frequency = <400000>;
|
||||
+ status = "okay";
|
||||
+
|
||||
+ rtc: rtc@51 {
|
||||
+ compatible = "nxp,pcf8563";
|
||||
+ reg = <0x51>;
|
||||
+ #clock-cells = <0>;
|
||||
+ };
|
||||
+};
|
||||
+
|
||||
+&i2s0_8ch {
|
||||
+ status = "okay";
|
||||
+};
|
||||
+
|
||||
+&i2s1_8ch {
|
||||
+ rockchip,trcm-sync-tx-only;
|
||||
+ status = "okay";
|
||||
+};
|
||||
+
|
||||
+&mdio1 {
|
||||
+ rgmii_phy1: ethernet-phy@0 {
|
||||
+ compatible = "ethernet-phy-ieee802.3-c22";
|
||||
+ reg = <0x0>;
|
||||
+ };
|
||||
+};
|
||||
+
|
||||
+&pinctrl {
|
||||
+ fspi {
|
||||
+ fspi_dual_io_pins: fspi-dual-io-pins {
|
||||
+ rockchip,pins =
|
||||
+ /* fspi_clk */
|
||||
+ <1 RK_PD0 1 &pcfg_pull_none>,
|
||||
+ /* fspi_cs0n */
|
||||
+ <1 RK_PD3 1 &pcfg_pull_none>,
|
||||
+ /* fspi_d0 */
|
||||
+ <1 RK_PD1 1 &pcfg_pull_none>,
|
||||
+ /* fspi_d1 */
|
||||
+ <1 RK_PD2 1 &pcfg_pull_none>;
|
||||
+ };
|
||||
+ };
|
||||
+
|
||||
+ ethernet {
|
||||
+ eth_phy_rst: eth_phy_rst {
|
||||
+ rockchip,pins = <4 RK_PC2 RK_FUNC_GPIO &pcfg_pull_none>;
|
||||
+ };
|
||||
+ };
|
||||
+
|
||||
+ leds {
|
||||
+ led_power_pin: led-power-pin {
|
||||
+ rockchip,pins = <0 RK_PB6 RK_FUNC_GPIO &pcfg_pull_none>;
|
||||
+ };
|
||||
+ led_act_pin: led-act-pin {
|
||||
+ rockchip,pins = <0 RK_PB7 RK_FUNC_GPIO &pcfg_pull_none>;
|
||||
+ };
|
||||
+ led_usr_pin: led-user-pin {
|
||||
+ rockchip,pins = <0 RK_PC5 RK_FUNC_GPIO &pcfg_pull_none>;
|
||||
+ };
|
||||
+ };
|
||||
+
|
||||
+ pmic {
|
||||
+ pmic_int_l: pmic-int-l {
|
||||
+ rockchip,pins = <0 RK_PA3 RK_FUNC_GPIO &pcfg_pull_up>;
|
||||
+ };
|
||||
+ };
|
||||
+
|
||||
+ usb {
|
||||
+ vcc5v0_usb_host_en_pin: vcc5v0-usb-host-en-pin {
|
||||
+ rockchip,pins = <0 RK_PA6 RK_FUNC_GPIO &pcfg_pull_none>;
|
||||
+ };
|
||||
+ };
|
||||
+};
|
||||
+
|
||||
+&pmu_io_domains {
|
||||
+ pmuio1-supply = <&vcc3v3_pmu>;
|
||||
+ pmuio2-supply = <&vcc3v3_pmu>;
|
||||
+ vccio1-supply = <&vccio_acodec>;
|
||||
+ vccio2-supply = <&vcc_1v8>;
|
||||
+ vccio3-supply = <&vccio_sd>;
|
||||
+ vccio4-supply = <&vcc_1v8>; /* float */
|
||||
+ vccio5-supply = <&vcc_1v8>;
|
||||
+ vccio6-supply = <&vcc_1v8>;
|
||||
+ vccio7-supply = <&vcc_3v3>;
|
||||
+ status = "okay";
|
||||
+};
|
||||
+
|
||||
+&saradc {
|
||||
+ vref-supply = <&vcca_1v8>;
|
||||
+ status = "okay";
|
||||
+};
|
||||
+
|
||||
+&sdhci {
|
||||
+ bus-width = <8>;
|
||||
+ max-frequency = <200000000>;
|
||||
+ non-removable;
|
||||
+ pinctrl-names = "default";
|
||||
+ pinctrl-0 = <&emmc_bus8 &emmc_clk &emmc_cmd &emmc_datastrobe &emmc_rstnout>;
|
||||
+ vmmc-supply = <&vcc_3v3>;
|
||||
+ vqmmc-supply = <&vcc_1v8>;
|
||||
+ status = "okay";
|
||||
+};
|
||||
+
|
||||
+&sdmmc0 {
|
||||
+ bus-width = <4>;
|
||||
+ cap-sd-highspeed;
|
||||
+ cd-gpios = <&gpio0 RK_PA4 GPIO_ACTIVE_LOW>;
|
||||
+ disable-wp;
|
||||
+ pinctrl-names = "default";
|
||||
+ pinctrl-0 = <&sdmmc0_bus4 &sdmmc0_clk &sdmmc0_cmd &sdmmc0_det>;
|
||||
+ sd-uhs-sdr104;
|
||||
+ vmmc-supply = <&vcc3v3_sd>;
|
||||
+ vqmmc-supply = <&vccio_sd>;
|
||||
+ status = "okay";
|
||||
+};
|
||||
+
|
||||
+&sfc {
|
||||
+ /* Dual I/O mode as the D2 pin conflicts with the eMMC */
|
||||
+ pinctrl-0 = <&fspi_dual_io_pins>;
|
||||
+ pinctrl-names = "default";
|
||||
+ #address-cells = <1>;
|
||||
+ #size-cells = <0>;
|
||||
+ status = "okay";
|
||||
+
|
||||
+ flash@0 {
|
||||
+ compatible = "jedec,spi-nor";
|
||||
+ reg = <0>;
|
||||
+ spi-max-frequency = <100000000>;
|
||||
+ spi-rx-bus-width = <4>;
|
||||
+ spi-tx-bus-width = <1>;
|
||||
+
|
||||
+ partitions {
|
||||
+ compatible = "fixed-partitions";
|
||||
+ #address-cells = <1>;
|
||||
+ #size-cells = <1>;
|
||||
+
|
||||
+ partition@0 {
|
||||
+ label = "SPL";
|
||||
+ reg = <0x0 0xe0000>;
|
||||
+ };
|
||||
+ partition@e0000 {
|
||||
+ label = "U-Boot Env";
|
||||
+ reg = <0xe0000 0x20000>;
|
||||
+ };
|
||||
+ partition@100000 {
|
||||
+ label = "U-Boot";
|
||||
+ reg = <0x100000 0x200000>;
|
||||
+ };
|
||||
+ partition@300000 {
|
||||
+ label = "splash";
|
||||
+ reg = <0x300000 0x100000>;
|
||||
+ };
|
||||
+ partition@400000 {
|
||||
+ label = "Filesystem";
|
||||
+ reg = <0x400000 0xc00000>;
|
||||
+ };
|
||||
+ };
|
||||
+ };
|
||||
+};
|
||||
+
|
||||
+&tsadc {
|
||||
+ rockchip,hw-tshut-mode = <1>;
|
||||
+ rockchip,hw-tshut-polarity = <0>;
|
||||
+ status = "okay";
|
||||
+};
|
||||
+
|
||||
+&uart2 {
|
||||
+ status = "okay";
|
||||
+};
|
||||
+
|
||||
+&usb_host0_ehci {
|
||||
+ status = "okay";
|
||||
+};
|
||||
+
|
||||
+&usb_host0_ohci {
|
||||
+ status = "okay";
|
||||
+};
|
||||
+
|
||||
+&usb_host0_xhci {
|
||||
+ dr_mode = "host";
|
||||
+ status = "okay";
|
||||
+};
|
||||
+
|
||||
+&usb_host1_ehci {
|
||||
+ status = "okay";
|
||||
+};
|
||||
+
|
||||
+&usb_host1_ohci {
|
||||
+ status = "okay";
|
||||
+};
|
||||
+
|
||||
+&usb_host1_xhci {
|
||||
+ status = "okay";
|
||||
+ phys = <&usb2phy0_host>;
|
||||
+ phy-names = "usb2-phy";
|
||||
+ snps,dis_u2_susphy_quirk;
|
||||
+ extcon = <&usb2phy0>;
|
||||
+ maximum-speed = "high-speed";
|
||||
+};
|
||||
+
|
||||
+&usb2phy0 {
|
||||
+ status = "okay";
|
||||
+};
|
||||
+
|
||||
+&usb2phy0_host {
|
||||
+ phy-supply = <&vcc5v0_usb_host>;
|
||||
+ status = "okay";
|
||||
+};
|
||||
+
|
||||
+&usb2phy0_otg {
|
||||
+ phy-supply = <&vcc5v0_usb_host>;
|
||||
+ status = "okay";
|
||||
+};
|
||||
+
|
||||
+&usb2phy1 {
|
||||
+ status = "okay";
|
||||
+};
|
||||
+
|
||||
+&usb2phy1_host {
|
||||
+ phy-supply = <&vcc5v0_usb_host>;
|
||||
+ status = "okay";
|
||||
+};
|
||||
+
|
||||
+&usb2phy1_otg {
|
||||
+ phy-supply = <&vcc5v0_usb_host>;
|
||||
+ status = "okay";
|
||||
+};
|
||||
+
|
||||
+&vop {
|
||||
+ assigned-clocks = <&cru DCLK_VOP0>, <&cru DCLK_VOP1>;
|
||||
+ assigned-clock-parents = <&pmucru PLL_HPLL>, <&cru PLL_VPLL>;
|
||||
+ status = "okay";
|
||||
+};
|
||||
+
|
||||
+&vop_mmu {
|
||||
+ status = "okay";
|
||||
+};
|
||||
+
|
||||
+&vp0 {
|
||||
+ vp0_out_hdmi: endpoint@ROCKCHIP_VOP2_EP_HDMI0 {
|
||||
+ reg = <ROCKCHIP_VOP2_EP_HDMI0>;
|
||||
+ remote-endpoint = <&hdmi_in_vp0>;
|
||||
+ };
|
||||
+};
|
||||
--
|
||||
2.25.1
|
||||
|
@ -0,0 +1,41 @@
|
||||
From e86272fa8063a047a55a9548400a95742f1c2d2a Mon Sep 17 00:00:00 2001
|
||||
From: Zhangqun Ming <north_sea@qq.com>
|
||||
Date: Wed, 12 Jul 2023 02:33:03 +0000
|
||||
Subject: [PATCH] drivers: mfd: rk808: set PWRON_LP_OFF_TIME 12s
|
||||
|
||||
---
|
||||
drivers/mfd/rk808.c | 1 +
|
||||
include/linux/mfd/rk808.h | 5 +++++
|
||||
2 files changed, 6 insertions(+)
|
||||
|
||||
diff --git a/drivers/mfd/rk808.c b/drivers/mfd/rk808.c
|
||||
index e00da7c7e..ae3c99809 100644
|
||||
--- a/drivers/mfd/rk808.c
|
||||
+++ b/drivers/mfd/rk808.c
|
||||
@@ -300,6 +300,7 @@ static const struct rk808_reg_data rk817_pre_init_reg[] = {
|
||||
{RK817_GPIO_INT_CFG, RK817_INT_POL_MSK, RK817_INT_POL_L},
|
||||
{RK817_SYS_CFG(1), RK817_HOTDIE_TEMP_MSK | RK817_TSD_TEMP_MSK,
|
||||
RK817_HOTDIE_105 | RK817_TSD_140},
|
||||
+ {RK817_PMIC_PWRON_KEY, RK817_PMIC_PWRON_KEY_MSK, RK817_PWRON_LP_OFF_TIME},
|
||||
};
|
||||
|
||||
static const struct rk808_reg_data rk818_pre_init_reg[] = {
|
||||
diff --git a/include/linux/mfd/rk808.h b/include/linux/mfd/rk808.h
|
||||
index 9af1f3105..d02e56e09 100644
|
||||
--- a/include/linux/mfd/rk808.h
|
||||
+++ b/include/linux/mfd/rk808.h
|
||||
@@ -644,6 +644,11 @@ enum rk809_reg_id {
|
||||
#define RK817_ON_SOURCE_REG 0xf5
|
||||
#define RK817_OFF_SOURCE_REG 0xf6
|
||||
|
||||
+#define RK817_PMIC_PWRON_KEY 0xf7
|
||||
+#define RK817_PMIC_PWRON_KEY_MSK (0x3 << 4)
|
||||
+/* 00: 6s, 01: 8s, 10: 10s, 11: 12s */
|
||||
+#define RK817_PWRON_LP_OFF_TIME (0x3 << 4)
|
||||
+
|
||||
/* INTERRUPT REGISTER */
|
||||
#define RK817_INT_STS_REG0 0xf8
|
||||
#define RK817_INT_STS_MSK_REG0 0xf9
|
||||
--
|
||||
2.25.1
|
||||
|
@ -0,0 +1,55 @@
|
||||
From 5f1f9863bf1031e608537945fdc97e099cb9e42c Mon Sep 17 00:00:00 2001
|
||||
From: Zhangqun Ming <north_sea@qq.com>
|
||||
Date: Sat, 15 Jul 2023 08:28:16 +0000
|
||||
Subject: [PATCH] arch: arm64: dts: green: Remove spiflash partitions
|
||||
|
||||
---
|
||||
.../boot/dts/rockchip/rk3566-ha-green.dts | 31 ++-----------------
|
||||
1 file changed, 2 insertions(+), 29 deletions(-)
|
||||
|
||||
diff --git a/arch/arm64/boot/dts/rockchip/rk3566-ha-green.dts b/arch/arm64/boot/dts/rockchip/rk3566-ha-green.dts
|
||||
index d0830df48..66ef38600 100644
|
||||
--- a/arch/arm64/boot/dts/rockchip/rk3566-ha-green.dts
|
||||
+++ b/arch/arm64/boot/dts/rockchip/rk3566-ha-green.dts
|
||||
@@ -566,36 +566,9 @@ &sfc {
|
||||
flash@0 {
|
||||
compatible = "jedec,spi-nor";
|
||||
reg = <0>;
|
||||
- spi-max-frequency = <100000000>;
|
||||
- spi-rx-bus-width = <4>;
|
||||
+ spi-max-frequency = <25000000>;
|
||||
+ spi-rx-bus-width = <1>;
|
||||
spi-tx-bus-width = <1>;
|
||||
-
|
||||
- partitions {
|
||||
- compatible = "fixed-partitions";
|
||||
- #address-cells = <1>;
|
||||
- #size-cells = <1>;
|
||||
-
|
||||
- partition@0 {
|
||||
- label = "SPL";
|
||||
- reg = <0x0 0xe0000>;
|
||||
- };
|
||||
- partition@e0000 {
|
||||
- label = "U-Boot Env";
|
||||
- reg = <0xe0000 0x20000>;
|
||||
- };
|
||||
- partition@100000 {
|
||||
- label = "U-Boot";
|
||||
- reg = <0x100000 0x200000>;
|
||||
- };
|
||||
- partition@300000 {
|
||||
- label = "splash";
|
||||
- reg = <0x300000 0x100000>;
|
||||
- };
|
||||
- partition@400000 {
|
||||
- label = "Filesystem";
|
||||
- reg = <0x400000 0xc00000>;
|
||||
- };
|
||||
- };
|
||||
};
|
||||
};
|
||||
|
||||
--
|
||||
2.25.1
|
||||
|
@ -0,0 +1,41 @@
|
||||
From 32ee0c67a53f541f42b3a953e992bac12d5375d6 Mon Sep 17 00:00:00 2001
|
||||
Message-ID: <32ee0c67a53f541f42b3a953e992bac12d5375d6.1689754249.git.stefan@agner.ch>
|
||||
In-Reply-To: <fa0e84b5fbb7b6ce0b161bfcfe495f3648d02110.1689754249.git.stefan@agner.ch>
|
||||
References: <fa0e84b5fbb7b6ce0b161bfcfe495f3648d02110.1689754249.git.stefan@agner.ch>
|
||||
From: Stefan Agner <stefan@agner.ch>
|
||||
Date: Wed, 19 Jul 2023 10:08:06 +0200
|
||||
Subject: [PATCH] Input: rk805-pwrkey: reverse polarity of pwrkey
|
||||
|
||||
The power key is low active. Reverse logic to avoid involuntary long
|
||||
press being reported to user space.
|
||||
|
||||
Signed-off-by: Stefan Agner <stefan@agner.ch>
|
||||
---
|
||||
drivers/input/misc/rk805-pwrkey.c | 4 ++--
|
||||
1 file changed, 2 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git a/drivers/input/misc/rk805-pwrkey.c b/drivers/input/misc/rk805-pwrkey.c
|
||||
index 76873aa005b4..139419033c84 100644
|
||||
--- a/drivers/input/misc/rk805-pwrkey.c
|
||||
+++ b/drivers/input/misc/rk805-pwrkey.c
|
||||
@@ -19,7 +19,7 @@ static irqreturn_t pwrkey_fall_irq(int irq, void *_pwr)
|
||||
{
|
||||
struct input_dev *pwr = _pwr;
|
||||
|
||||
- input_report_key(pwr, KEY_POWER, 1);
|
||||
+ input_report_key(pwr, KEY_POWER, 0);
|
||||
input_sync(pwr);
|
||||
|
||||
return IRQ_HANDLED;
|
||||
@@ -29,7 +29,7 @@ static irqreturn_t pwrkey_rise_irq(int irq, void *_pwr)
|
||||
{
|
||||
struct input_dev *pwr = _pwr;
|
||||
|
||||
- input_report_key(pwr, KEY_POWER, 0);
|
||||
+ input_report_key(pwr, KEY_POWER, 1);
|
||||
input_sync(pwr);
|
||||
|
||||
return IRQ_HANDLED;
|
||||
--
|
||||
2.41.0
|
||||
|
@ -0,0 +1,24 @@
|
||||
From 10c2c3afa62f58c4f795a0777aa8635428e3c78a Mon Sep 17 00:00:00 2001
|
||||
From: zhangcy <chengyu.zhang@seeed.cc>
|
||||
Date: Mon, 14 Aug 2023 01:27:34 +0000
|
||||
Subject: [PATCH] green: emmc use HS200 mode
|
||||
|
||||
---
|
||||
arch/arm64/boot/dts/rockchip/rk3566-ha-green.dts | 1 +
|
||||
1 file changed, 1 insertion(+)
|
||||
|
||||
diff --git a/arch/arm64/boot/dts/rockchip/rk3566-ha-green.dts b/arch/arm64/boot/dts/rockchip/rk3566-ha-green.dts
|
||||
index f742b904a..3b564950f 100644
|
||||
--- a/arch/arm64/boot/dts/rockchip/rk3566-ha-green.dts
|
||||
+++ b/arch/arm64/boot/dts/rockchip/rk3566-ha-green.dts
|
||||
@@ -533,6 +533,7 @@ &saradc {
|
||||
|
||||
&sdhci {
|
||||
bus-width = <8>;
|
||||
+ mmc-hs200-1_8v;
|
||||
max-frequency = <200000000>;
|
||||
non-removable;
|
||||
pinctrl-names = "default";
|
||||
--
|
||||
2.25.1
|
||||
|
@ -0,0 +1,836 @@
|
||||
From 377934f736699077b3622949231f171b4f3c4386 Mon Sep 17 00:00:00 2001
|
||||
Message-ID: <377934f736699077b3622949231f171b4f3c4386.1689232931.git.stefan@agner.ch>
|
||||
From: Zhangqun Ming <north_sea@qq.com>
|
||||
Date: Thu, 6 Jul 2023 10:06:35 +0000
|
||||
Subject: [PATCH] arch: arm: dts: Add NabuCasa Green board
|
||||
|
||||
---
|
||||
arch/arm/dts/Makefile | 1 +
|
||||
arch/arm/dts/rk3566-ha-green-u-boot.dtsi | 28 +
|
||||
arch/arm/dts/rk3566-ha-green.dts | 685 +++++++++++++++++++++++
|
||||
configs/green_defconfig | 74 +++
|
||||
4 files changed, 788 insertions(+)
|
||||
create mode 100644 arch/arm/dts/rk3566-ha-green-u-boot.dtsi
|
||||
create mode 100644 arch/arm/dts/rk3566-ha-green.dts
|
||||
create mode 100644 configs/green_defconfig
|
||||
|
||||
diff --git a/arch/arm/dts/Makefile b/arch/arm/dts/Makefile
|
||||
index 480269fa60..b82ebfe371 100644
|
||||
--- a/arch/arm/dts/Makefile
|
||||
+++ b/arch/arm/dts/Makefile
|
||||
@@ -167,6 +167,7 @@ dtb-$(CONFIG_ROCKCHIP_RK3399) += \
|
||||
|
||||
dtb-$(CONFIG_ROCKCHIP_RK3568) += \
|
||||
rk3566-anbernic-rgxx3.dtb \
|
||||
+ rk3566-ha-green.dtb \
|
||||
rk3566-radxa-cm3-io.dtb \
|
||||
rk3568-evb.dtb \
|
||||
rk3568-rock-3a.dtb
|
||||
diff --git a/arch/arm/dts/rk3566-ha-green-u-boot.dtsi b/arch/arm/dts/rk3566-ha-green-u-boot.dtsi
|
||||
new file mode 100644
|
||||
index 0000000000..83fa66d591
|
||||
--- /dev/null
|
||||
+++ b/arch/arm/dts/rk3566-ha-green-u-boot.dtsi
|
||||
@@ -0,0 +1,28 @@
|
||||
+// SPDX-License-Identifier: GPL-2.0+
|
||||
+/*
|
||||
+ * (C) Copyright 2021 Rockchip Electronics Co., Ltd
|
||||
+ * (C) Copyright 2023 Akash Gajjar <gajjar04akash@gmail.com>
|
||||
+ */
|
||||
+
|
||||
+#include "rk356x-u-boot.dtsi"
|
||||
+
|
||||
+/ {
|
||||
+ chosen {
|
||||
+ stdout-path = &uart2;
|
||||
+ u-boot,spl-boot-order = "same-as-spl", &sdhci, &sdmmc0;
|
||||
+ };
|
||||
+};
|
||||
+
|
||||
+&sdmmc0 {
|
||||
+ status = "okay";
|
||||
+};
|
||||
+
|
||||
+&sdhci {
|
||||
+ status = "okay";
|
||||
+};
|
||||
+
|
||||
+&uart2 {
|
||||
+ clock-frequency = <24000000>;
|
||||
+ bootph-all;
|
||||
+ u-boot,dm-pre-reloc;
|
||||
+};
|
||||
diff --git a/arch/arm/dts/rk3566-ha-green.dts b/arch/arm/dts/rk3566-ha-green.dts
|
||||
new file mode 100644
|
||||
index 0000000000..d0830df48d
|
||||
--- /dev/null
|
||||
+++ b/arch/arm/dts/rk3566-ha-green.dts
|
||||
@@ -0,0 +1,685 @@
|
||||
+// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
|
||||
+/*
|
||||
+ * Copyright (c) 2023 Seeed Co., Ltd.
|
||||
+ *
|
||||
+ */
|
||||
+
|
||||
+/dts-v1/;
|
||||
+#include <dt-bindings/gpio/gpio.h>
|
||||
+#include <dt-bindings/leds/common.h>
|
||||
+#include <dt-bindings/pinctrl/rockchip.h>
|
||||
+#include <dt-bindings/soc/rockchip,vop2.h>
|
||||
+#include "rk3566.dtsi"
|
||||
+
|
||||
+/ {
|
||||
+ model = "Home Assistant Green";
|
||||
+ compatible = "rockchip,rk3566-ha-green", "rockchip,rk3566";
|
||||
+
|
||||
+ aliases {
|
||||
+ ethernet1 = &gmac1;
|
||||
+ mmc0 = &sdhci;
|
||||
+ mmc1 = &sdmmc0;
|
||||
+ };
|
||||
+
|
||||
+ chosen {
|
||||
+ stdout-path = "serial2:1500000n8";
|
||||
+ };
|
||||
+
|
||||
+ dc_12v: dc-12v-regulator {
|
||||
+ compatible = "regulator-fixed";
|
||||
+ regulator-name = "dc_12v";
|
||||
+ regulator-always-on;
|
||||
+ regulator-boot-on;
|
||||
+ regulator-min-microvolt = <12000000>;
|
||||
+ regulator-max-microvolt = <12000000>;
|
||||
+ };
|
||||
+
|
||||
+ hdmi-con {
|
||||
+ compatible = "hdmi-connector";
|
||||
+ type = "a";
|
||||
+
|
||||
+ port {
|
||||
+ hdmi_con_in: endpoint {
|
||||
+ remote-endpoint = <&hdmi_out_con>;
|
||||
+ };
|
||||
+ };
|
||||
+ };
|
||||
+
|
||||
+ leds {
|
||||
+ compatible = "gpio-leds";
|
||||
+
|
||||
+ led_power: led-0 {
|
||||
+ gpios = <&gpio0 RK_PB6 GPIO_ACTIVE_HIGH>;
|
||||
+ function = LED_FUNCTION_POWER;
|
||||
+ color = <LED_COLOR_ID_RED>;
|
||||
+ default-state = "keep";
|
||||
+ linux,default-trigger = "default-on";
|
||||
+ pinctrl-names = "default";
|
||||
+ pinctrl-0 = <&led_power_pin>;
|
||||
+ };
|
||||
+ led_act: led-1 {
|
||||
+ gpios = <&gpio0 RK_PB7 GPIO_ACTIVE_HIGH>;
|
||||
+ function = LED_FUNCTION_ACTIVITY;
|
||||
+ color = <LED_COLOR_ID_GREEN>;
|
||||
+ linux,default-trigger = "activity";
|
||||
+ pinctrl-names = "default";
|
||||
+ pinctrl-0 = <&led_act_pin>;
|
||||
+ };
|
||||
+ led_user: led-2 {
|
||||
+ gpios = <&gpio0 RK_PC5 GPIO_ACTIVE_HIGH>;
|
||||
+ function = LED_FUNCTION_HEARTBEAT;
|
||||
+ color = <LED_COLOR_ID_YELLOW>;
|
||||
+ linux,default-trigger = "heartbeat";
|
||||
+ pinctrl-names = "default";
|
||||
+ pinctrl-0 = <&led_usr_pin>;
|
||||
+ };
|
||||
+ };
|
||||
+
|
||||
+ rk809-sound {
|
||||
+ compatible = "simple-audio-card";
|
||||
+ simple-audio-card,name = "Analog RK817";
|
||||
+ simple-audio-card,format = "i2s";
|
||||
+ simple-audio-card,mclk-fs = <256>;
|
||||
+ simple-audio-card,widgets =
|
||||
+ "Headphone", "Headphones",
|
||||
+ "Speaker", "Speaker";
|
||||
+ simple-audio-card,routing =
|
||||
+ "Headphones", "HPOL",
|
||||
+ "Headphones", "HPOR",
|
||||
+ "Speaker", "SPKO";
|
||||
+
|
||||
+ simple-audio-card,cpu {
|
||||
+ sound-dai = <&i2s1_8ch>;
|
||||
+ };
|
||||
+
|
||||
+ simple-audio-card,codec {
|
||||
+ sound-dai = <&rk809>;
|
||||
+ };
|
||||
+ };
|
||||
+
|
||||
+ vcc3v3_sys: vcc3v3-sys-regulator {
|
||||
+ compatible = "regulator-fixed";
|
||||
+ regulator-name = "vcc3v3_sys";
|
||||
+ regulator-always-on;
|
||||
+ regulator-boot-on;
|
||||
+ regulator-min-microvolt = <3300000>;
|
||||
+ regulator-max-microvolt = <3300000>;
|
||||
+ vin-supply = <&dc_12v>;
|
||||
+ };
|
||||
+
|
||||
+ vcc5v0_sys: vcc5v0-sys-regulator {
|
||||
+ compatible = "regulator-fixed";
|
||||
+ regulator-name = "vcc5v0_sys";
|
||||
+ regulator-always-on;
|
||||
+ regulator-boot-on;
|
||||
+ regulator-min-microvolt = <5000000>;
|
||||
+ regulator-max-microvolt = <5000000>;
|
||||
+ vin-supply = <&dc_12v>;
|
||||
+ };
|
||||
+
|
||||
+ vcc5v0_usb_host: vcc5v0-usb-host-regulator {
|
||||
+ compatible = "regulator-fixed";
|
||||
+ regulator-name = "vcc5v0_usb_host";
|
||||
+ enable-active-high;
|
||||
+ gpio = <&gpio0 RK_PA6 GPIO_ACTIVE_HIGH>;
|
||||
+ pinctrl-names = "default";
|
||||
+ pinctrl-0 = <&vcc5v0_usb_host_en_pin>;
|
||||
+ regulator-min-microvolt = <5000000>;
|
||||
+ regulator-max-microvolt = <5000000>;
|
||||
+ vin-supply = <&vcc5v0_sys>;
|
||||
+ };
|
||||
+};
|
||||
+
|
||||
+&cpu0 {
|
||||
+ cpu-supply = <&vdd_cpu>;
|
||||
+};
|
||||
+
|
||||
+&cpu1 {
|
||||
+ cpu-supply = <&vdd_cpu>;
|
||||
+};
|
||||
+
|
||||
+&cpu2 {
|
||||
+ cpu-supply = <&vdd_cpu>;
|
||||
+};
|
||||
+
|
||||
+&cpu3 {
|
||||
+ cpu-supply = <&vdd_cpu>;
|
||||
+};
|
||||
+
|
||||
+&gmac1 {
|
||||
+ assigned-clocks = <&cru SCLK_GMAC1_RX_TX>, <&cru SCLK_GMAC1>;
|
||||
+ assigned-clock-parents = <&cru SCLK_GMAC1_RGMII_SPEED>;
|
||||
+ assigned-clock-rates = <0>, <125000000>;
|
||||
+ clock_in_out = "output";
|
||||
+
|
||||
+ snps,reset-gpio = <&gpio4 RK_PC2 GPIO_ACTIVE_LOW>;
|
||||
+ snps,reset-active-low;
|
||||
+ /* Reset time is 20ms, 100ms for rtl8211f */
|
||||
+ snps,reset-delays-us = <0 20000 100000>;
|
||||
+
|
||||
+ phy-handle = <&rgmii_phy1>;
|
||||
+ phy-mode = "rgmii";
|
||||
+
|
||||
+ pinctrl-names = "default";
|
||||
+ pinctrl-0 = <&gmac1m0_miim
|
||||
+ &gmac1m0_tx_bus2
|
||||
+ &gmac1m0_rx_bus2
|
||||
+ &gmac1m0_rgmii_clk
|
||||
+ &gmac1m0_rgmii_bus>;
|
||||
+ status = "okay";
|
||||
+
|
||||
+ tx_delay = <0x47>;
|
||||
+ rx_delay = <0x27>;
|
||||
+};
|
||||
+
|
||||
+&gpu {
|
||||
+ mali-supply = <&vdd_gpu>;
|
||||
+ status = "okay";
|
||||
+};
|
||||
+
|
||||
+&hdmi {
|
||||
+ avdd-0v9-supply = <&vdda0v9_image>;
|
||||
+ avdd-1v8-supply = <&vcca1v8_image>;
|
||||
+ status = "okay";
|
||||
+};
|
||||
+
|
||||
+&hdmi_in {
|
||||
+ hdmi_in_vp0: endpoint {
|
||||
+ remote-endpoint = <&vp0_out_hdmi>;
|
||||
+ };
|
||||
+};
|
||||
+
|
||||
+&hdmi_out {
|
||||
+ hdmi_out_con: endpoint {
|
||||
+ remote-endpoint = <&hdmi_con_in>;
|
||||
+ };
|
||||
+};
|
||||
+
|
||||
+&hdmi_sound {
|
||||
+ status = "okay";
|
||||
+};
|
||||
+
|
||||
+&i2c0 {
|
||||
+ status = "okay";
|
||||
+
|
||||
+ vdd_cpu: rk8601@41 {
|
||||
+ compatible = "rockchip,rk8601";
|
||||
+ reg = <0x41>;
|
||||
+ vin-supply = <&vcc5v0_sys>;
|
||||
+ regulator-compatible = "rk860x-reg";
|
||||
+ regulator-name = "vdd_cpu";
|
||||
+ regulator-min-microvolt = <712500>;
|
||||
+ regulator-max-microvolt = <1500000>;
|
||||
+ regulator-ramp-delay = <2300>;
|
||||
+ rockchip,suspend-voltage-selector = <1>;
|
||||
+ regulator-boot-on;
|
||||
+ regulator-always-on;
|
||||
+ regulator-state-mem {
|
||||
+ regulator-off-in-suspend;
|
||||
+ };
|
||||
+ };
|
||||
+
|
||||
+ rk809: pmic@20 {
|
||||
+ compatible = "rockchip,rk809";
|
||||
+ reg = <0x20>;
|
||||
+ interrupt-parent = <&gpio0>;
|
||||
+ interrupts = <RK_PA3 IRQ_TYPE_LEVEL_LOW>;
|
||||
+ assigned-clocks = <&cru I2S1_MCLKOUT_TX>;
|
||||
+ assigned-clock-parents = <&cru CLK_I2S1_8CH_TX>;
|
||||
+ #clock-cells = <1>;
|
||||
+ clock-names = "mclk";
|
||||
+ clocks = <&cru I2S1_MCLKOUT_TX>;
|
||||
+ pinctrl-names = "default";
|
||||
+ pinctrl-0 = <&pmic_int_l>, <&i2s1m0_mclk>;
|
||||
+
|
||||
+ rockchip,system-power-controller;
|
||||
+ #sound-dai-cells = <0>;
|
||||
+ wakeup-source;
|
||||
+
|
||||
+ vcc1-supply = <&vcc3v3_sys>;
|
||||
+ vcc2-supply = <&vcc3v3_sys>;
|
||||
+ vcc3-supply = <&vcc3v3_sys>;
|
||||
+ vcc4-supply = <&vcc3v3_sys>;
|
||||
+ vcc5-supply = <&vcc3v3_sys>;
|
||||
+ vcc6-supply = <&vcc3v3_sys>;
|
||||
+ vcc7-supply = <&vcc3v3_sys>;
|
||||
+ vcc8-supply = <&vcc3v3_sys>;
|
||||
+ vcc9-supply = <&vcc3v3_sys>;
|
||||
+
|
||||
+ regulators {
|
||||
+ vdd_logic: DCDC_REG1 {
|
||||
+ regulator-name = "vdd_logic";
|
||||
+ regulator-always-on;
|
||||
+ regulator-boot-on;
|
||||
+ regulator-init-microvolt = <900000>;
|
||||
+ regulator-initial-mode = <0x2>;
|
||||
+ regulator-min-microvolt = <500000>;
|
||||
+ regulator-max-microvolt = <1350000>;
|
||||
+ regulator-ramp-delay = <6001>;
|
||||
+
|
||||
+ regulator-state-mem {
|
||||
+ regulator-off-in-suspend;
|
||||
+ };
|
||||
+ };
|
||||
+
|
||||
+ vdd_gpu: DCDC_REG2 {
|
||||
+ regulator-name = "vdd_gpu";
|
||||
+ regulator-always-on;
|
||||
+ regulator-init-microvolt = <900000>;
|
||||
+ regulator-initial-mode = <0x2>;
|
||||
+ regulator-min-microvolt = <500000>;
|
||||
+ regulator-max-microvolt = <1350000>;
|
||||
+ regulator-ramp-delay = <6001>;
|
||||
+
|
||||
+ regulator-state-mem {
|
||||
+ regulator-off-in-suspend;
|
||||
+ };
|
||||
+ };
|
||||
+
|
||||
+ vcc_ddr: DCDC_REG3 {
|
||||
+ regulator-name = "vcc_ddr";
|
||||
+ regulator-always-on;
|
||||
+ regulator-boot-on;
|
||||
+ regulator-initial-mode = <0x2>;
|
||||
+
|
||||
+ regulator-state-mem {
|
||||
+ regulator-on-in-suspend;
|
||||
+ };
|
||||
+ };
|
||||
+
|
||||
+ vdd_npu: DCDC_REG4 {
|
||||
+ regulator-name = "vdd_npu";
|
||||
+ regulator-init-microvolt = <900000>;
|
||||
+ regulator-initial-mode = <0x2>;
|
||||
+ regulator-min-microvolt = <500000>;
|
||||
+ regulator-max-microvolt = <1350000>;
|
||||
+ regulator-ramp-delay = <6001>;
|
||||
+
|
||||
+ regulator-state-mem {
|
||||
+ regulator-off-in-suspend;
|
||||
+ };
|
||||
+ };
|
||||
+
|
||||
+ vcc_1v8: DCDC_REG5 {
|
||||
+ regulator-name = "vcc_1v8";
|
||||
+ regulator-always-on;
|
||||
+ regulator-boot-on;
|
||||
+ regulator-min-microvolt = <1800000>;
|
||||
+ regulator-max-microvolt = <1800000>;
|
||||
+
|
||||
+ regulator-state-mem {
|
||||
+ regulator-off-in-suspend;
|
||||
+ };
|
||||
+ };
|
||||
+
|
||||
+ vdda0v9_image: LDO_REG1 {
|
||||
+ regulator-name = "vdda0v9_image";
|
||||
+ regulator-always-on;
|
||||
+ regulator-min-microvolt = <900000>;
|
||||
+ regulator-max-microvolt = <900000>;
|
||||
+
|
||||
+ regulator-state-mem {
|
||||
+ regulator-off-in-suspend;
|
||||
+ };
|
||||
+ };
|
||||
+
|
||||
+ vdda_0v9: LDO_REG2 {
|
||||
+ regulator-name = "vdda_0v9";
|
||||
+ regulator-always-on;
|
||||
+ regulator-boot-on;
|
||||
+ regulator-min-microvolt = <900000>;
|
||||
+ regulator-max-microvolt = <900000>;
|
||||
+
|
||||
+ regulator-state-mem {
|
||||
+ regulator-off-in-suspend;
|
||||
+ };
|
||||
+ };
|
||||
+
|
||||
+ vdda0v9_pmu: LDO_REG3 {
|
||||
+ regulator-name = "vdda0v9_pmu";
|
||||
+ regulator-always-on;
|
||||
+ regulator-boot-on;
|
||||
+ regulator-min-microvolt = <900000>;
|
||||
+ regulator-max-microvolt = <900000>;
|
||||
+
|
||||
+ regulator-state-mem {
|
||||
+ regulator-on-in-suspend;
|
||||
+ regulator-suspend-microvolt = <900000>;
|
||||
+ };
|
||||
+ };
|
||||
+
|
||||
+ vccio_acodec: LDO_REG4 {
|
||||
+ regulator-name = "vccio_acodec";
|
||||
+ regulator-always-on;
|
||||
+ regulator-boot-on;
|
||||
+ regulator-min-microvolt = <3300000>;
|
||||
+ regulator-max-microvolt = <3300000>;
|
||||
+
|
||||
+ regulator-state-mem {
|
||||
+ regulator-off-in-suspend;
|
||||
+ };
|
||||
+ };
|
||||
+
|
||||
+ vccio_sd: LDO_REG5 {
|
||||
+ regulator-name = "vccio_sd";
|
||||
+ regulator-min-microvolt = <1800000>;
|
||||
+ regulator-max-microvolt = <3300000>;
|
||||
+
|
||||
+ regulator-state-mem {
|
||||
+ regulator-off-in-suspend;
|
||||
+ };
|
||||
+ };
|
||||
+
|
||||
+ vcc3v3_pmu: LDO_REG6 {
|
||||
+ regulator-name = "vcc3v3_pmu";
|
||||
+ regulator-always-on;
|
||||
+ regulator-boot-on;
|
||||
+ regulator-min-microvolt = <3300000>;
|
||||
+ regulator-max-microvolt = <3300000>;
|
||||
+
|
||||
+ regulator-state-mem {
|
||||
+ regulator-on-in-suspend;
|
||||
+ regulator-suspend-microvolt = <3300000>;
|
||||
+ };
|
||||
+ };
|
||||
+
|
||||
+ vcca_1v8: LDO_REG7 {
|
||||
+ regulator-name = "vcca_1v8";
|
||||
+ regulator-always-on;
|
||||
+ regulator-boot-on;
|
||||
+ regulator-min-microvolt = <1800000>;
|
||||
+ regulator-max-microvolt = <1800000>;
|
||||
+
|
||||
+ regulator-state-mem {
|
||||
+ regulator-off-in-suspend;
|
||||
+ };
|
||||
+ };
|
||||
+
|
||||
+ vcca1v8_pmu: LDO_REG8 {
|
||||
+ regulator-name = "vcca1v8_pmu";
|
||||
+ regulator-always-on;
|
||||
+ regulator-boot-on;
|
||||
+ regulator-min-microvolt = <1800000>;
|
||||
+ regulator-max-microvolt = <1800000>;
|
||||
+
|
||||
+ regulator-state-mem {
|
||||
+ regulator-on-in-suspend;
|
||||
+ regulator-suspend-microvolt = <1800000>;
|
||||
+ };
|
||||
+ };
|
||||
+
|
||||
+ vcca1v8_image: LDO_REG9 {
|
||||
+ regulator-name = "vcca1v8_image";
|
||||
+ regulator-always-on;
|
||||
+ regulator-min-microvolt = <1800000>;
|
||||
+ regulator-max-microvolt = <1800000>;
|
||||
+
|
||||
+ regulator-state-mem {
|
||||
+ regulator-off-in-suspend;
|
||||
+ };
|
||||
+ };
|
||||
+
|
||||
+ vcc_3v3: SWITCH_REG1 {
|
||||
+ regulator-name = "vcc_3v3";
|
||||
+ regulator-always-on;
|
||||
+ regulator-boot-on;
|
||||
+
|
||||
+ regulator-state-mem {
|
||||
+ regulator-off-in-suspend;
|
||||
+ };
|
||||
+ };
|
||||
+
|
||||
+ vcc3v3_sd: SWITCH_REG2 {
|
||||
+ regulator-name = "vcc3v3_sd";
|
||||
+
|
||||
+ regulator-state-mem {
|
||||
+ regulator-off-in-suspend;
|
||||
+ };
|
||||
+ };
|
||||
+ };
|
||||
+ };
|
||||
+};
|
||||
+
|
||||
+&i2c1 {
|
||||
+ clock-frequency = <400000>;
|
||||
+ status = "okay";
|
||||
+
|
||||
+ rtc: rtc@51 {
|
||||
+ compatible = "nxp,pcf8563";
|
||||
+ reg = <0x51>;
|
||||
+ #clock-cells = <0>;
|
||||
+ };
|
||||
+};
|
||||
+
|
||||
+&i2s0_8ch {
|
||||
+ status = "okay";
|
||||
+};
|
||||
+
|
||||
+&i2s1_8ch {
|
||||
+ rockchip,trcm-sync-tx-only;
|
||||
+ status = "okay";
|
||||
+};
|
||||
+
|
||||
+&mdio1 {
|
||||
+ rgmii_phy1: ethernet-phy@0 {
|
||||
+ compatible = "ethernet-phy-ieee802.3-c22";
|
||||
+ reg = <0x0>;
|
||||
+ };
|
||||
+};
|
||||
+
|
||||
+&pinctrl {
|
||||
+ fspi {
|
||||
+ fspi_dual_io_pins: fspi-dual-io-pins {
|
||||
+ rockchip,pins =
|
||||
+ /* fspi_clk */
|
||||
+ <1 RK_PD0 1 &pcfg_pull_none>,
|
||||
+ /* fspi_cs0n */
|
||||
+ <1 RK_PD3 1 &pcfg_pull_none>,
|
||||
+ /* fspi_d0 */
|
||||
+ <1 RK_PD1 1 &pcfg_pull_none>,
|
||||
+ /* fspi_d1 */
|
||||
+ <1 RK_PD2 1 &pcfg_pull_none>;
|
||||
+ };
|
||||
+ };
|
||||
+
|
||||
+ ethernet {
|
||||
+ eth_phy_rst: eth_phy_rst {
|
||||
+ rockchip,pins = <4 RK_PC2 RK_FUNC_GPIO &pcfg_pull_none>;
|
||||
+ };
|
||||
+ };
|
||||
+
|
||||
+ leds {
|
||||
+ led_power_pin: led-power-pin {
|
||||
+ rockchip,pins = <0 RK_PB6 RK_FUNC_GPIO &pcfg_pull_none>;
|
||||
+ };
|
||||
+ led_act_pin: led-act-pin {
|
||||
+ rockchip,pins = <0 RK_PB7 RK_FUNC_GPIO &pcfg_pull_none>;
|
||||
+ };
|
||||
+ led_usr_pin: led-user-pin {
|
||||
+ rockchip,pins = <0 RK_PC5 RK_FUNC_GPIO &pcfg_pull_none>;
|
||||
+ };
|
||||
+ };
|
||||
+
|
||||
+ pmic {
|
||||
+ pmic_int_l: pmic-int-l {
|
||||
+ rockchip,pins = <0 RK_PA3 RK_FUNC_GPIO &pcfg_pull_up>;
|
||||
+ };
|
||||
+ };
|
||||
+
|
||||
+ usb {
|
||||
+ vcc5v0_usb_host_en_pin: vcc5v0-usb-host-en-pin {
|
||||
+ rockchip,pins = <0 RK_PA6 RK_FUNC_GPIO &pcfg_pull_none>;
|
||||
+ };
|
||||
+ };
|
||||
+};
|
||||
+
|
||||
+&pmu_io_domains {
|
||||
+ pmuio1-supply = <&vcc3v3_pmu>;
|
||||
+ pmuio2-supply = <&vcc3v3_pmu>;
|
||||
+ vccio1-supply = <&vccio_acodec>;
|
||||
+ vccio2-supply = <&vcc_1v8>;
|
||||
+ vccio3-supply = <&vccio_sd>;
|
||||
+ vccio4-supply = <&vcc_1v8>; /* float */
|
||||
+ vccio5-supply = <&vcc_1v8>;
|
||||
+ vccio6-supply = <&vcc_1v8>;
|
||||
+ vccio7-supply = <&vcc_3v3>;
|
||||
+ status = "okay";
|
||||
+};
|
||||
+
|
||||
+&saradc {
|
||||
+ vref-supply = <&vcca_1v8>;
|
||||
+ status = "okay";
|
||||
+};
|
||||
+
|
||||
+&sdhci {
|
||||
+ bus-width = <8>;
|
||||
+ max-frequency = <200000000>;
|
||||
+ non-removable;
|
||||
+ pinctrl-names = "default";
|
||||
+ pinctrl-0 = <&emmc_bus8 &emmc_clk &emmc_cmd &emmc_datastrobe &emmc_rstnout>;
|
||||
+ vmmc-supply = <&vcc_3v3>;
|
||||
+ vqmmc-supply = <&vcc_1v8>;
|
||||
+ status = "okay";
|
||||
+};
|
||||
+
|
||||
+&sdmmc0 {
|
||||
+ bus-width = <4>;
|
||||
+ cap-sd-highspeed;
|
||||
+ cd-gpios = <&gpio0 RK_PA4 GPIO_ACTIVE_LOW>;
|
||||
+ disable-wp;
|
||||
+ pinctrl-names = "default";
|
||||
+ pinctrl-0 = <&sdmmc0_bus4 &sdmmc0_clk &sdmmc0_cmd &sdmmc0_det>;
|
||||
+ sd-uhs-sdr104;
|
||||
+ vmmc-supply = <&vcc3v3_sd>;
|
||||
+ vqmmc-supply = <&vccio_sd>;
|
||||
+ status = "okay";
|
||||
+};
|
||||
+
|
||||
+&sfc {
|
||||
+ /* Dual I/O mode as the D2 pin conflicts with the eMMC */
|
||||
+ pinctrl-0 = <&fspi_dual_io_pins>;
|
||||
+ pinctrl-names = "default";
|
||||
+ #address-cells = <1>;
|
||||
+ #size-cells = <0>;
|
||||
+ status = "okay";
|
||||
+
|
||||
+ flash@0 {
|
||||
+ compatible = "jedec,spi-nor";
|
||||
+ reg = <0>;
|
||||
+ spi-max-frequency = <100000000>;
|
||||
+ spi-rx-bus-width = <4>;
|
||||
+ spi-tx-bus-width = <1>;
|
||||
+
|
||||
+ partitions {
|
||||
+ compatible = "fixed-partitions";
|
||||
+ #address-cells = <1>;
|
||||
+ #size-cells = <1>;
|
||||
+
|
||||
+ partition@0 {
|
||||
+ label = "SPL";
|
||||
+ reg = <0x0 0xe0000>;
|
||||
+ };
|
||||
+ partition@e0000 {
|
||||
+ label = "U-Boot Env";
|
||||
+ reg = <0xe0000 0x20000>;
|
||||
+ };
|
||||
+ partition@100000 {
|
||||
+ label = "U-Boot";
|
||||
+ reg = <0x100000 0x200000>;
|
||||
+ };
|
||||
+ partition@300000 {
|
||||
+ label = "splash";
|
||||
+ reg = <0x300000 0x100000>;
|
||||
+ };
|
||||
+ partition@400000 {
|
||||
+ label = "Filesystem";
|
||||
+ reg = <0x400000 0xc00000>;
|
||||
+ };
|
||||
+ };
|
||||
+ };
|
||||
+};
|
||||
+
|
||||
+&tsadc {
|
||||
+ rockchip,hw-tshut-mode = <1>;
|
||||
+ rockchip,hw-tshut-polarity = <0>;
|
||||
+ status = "okay";
|
||||
+};
|
||||
+
|
||||
+&uart2 {
|
||||
+ status = "okay";
|
||||
+};
|
||||
+
|
||||
+&usb_host0_ehci {
|
||||
+ status = "okay";
|
||||
+};
|
||||
+
|
||||
+&usb_host0_ohci {
|
||||
+ status = "okay";
|
||||
+};
|
||||
+
|
||||
+&usb_host0_xhci {
|
||||
+ dr_mode = "host";
|
||||
+ status = "okay";
|
||||
+};
|
||||
+
|
||||
+&usb_host1_ehci {
|
||||
+ status = "okay";
|
||||
+};
|
||||
+
|
||||
+&usb_host1_ohci {
|
||||
+ status = "okay";
|
||||
+};
|
||||
+
|
||||
+&usb_host1_xhci {
|
||||
+ status = "okay";
|
||||
+ phys = <&usb2phy0_host>;
|
||||
+ phy-names = "usb2-phy";
|
||||
+ snps,dis_u2_susphy_quirk;
|
||||
+ extcon = <&usb2phy0>;
|
||||
+ maximum-speed = "high-speed";
|
||||
+};
|
||||
+
|
||||
+&usb2phy0 {
|
||||
+ status = "okay";
|
||||
+};
|
||||
+
|
||||
+&usb2phy0_host {
|
||||
+ phy-supply = <&vcc5v0_usb_host>;
|
||||
+ status = "okay";
|
||||
+};
|
||||
+
|
||||
+&usb2phy0_otg {
|
||||
+ phy-supply = <&vcc5v0_usb_host>;
|
||||
+ status = "okay";
|
||||
+};
|
||||
+
|
||||
+&usb2phy1 {
|
||||
+ status = "okay";
|
||||
+};
|
||||
+
|
||||
+&usb2phy1_host {
|
||||
+ phy-supply = <&vcc5v0_usb_host>;
|
||||
+ status = "okay";
|
||||
+};
|
||||
+
|
||||
+&usb2phy1_otg {
|
||||
+ phy-supply = <&vcc5v0_usb_host>;
|
||||
+ status = "okay";
|
||||
+};
|
||||
+
|
||||
+&vop {
|
||||
+ assigned-clocks = <&cru DCLK_VOP0>, <&cru DCLK_VOP1>;
|
||||
+ assigned-clock-parents = <&pmucru PLL_HPLL>, <&cru PLL_VPLL>;
|
||||
+ status = "okay";
|
||||
+};
|
||||
+
|
||||
+&vop_mmu {
|
||||
+ status = "okay";
|
||||
+};
|
||||
+
|
||||
+&vp0 {
|
||||
+ vp0_out_hdmi: endpoint@ROCKCHIP_VOP2_EP_HDMI0 {
|
||||
+ reg = <ROCKCHIP_VOP2_EP_HDMI0>;
|
||||
+ remote-endpoint = <&hdmi_in_vp0>;
|
||||
+ };
|
||||
+};
|
||||
diff --git a/configs/green_defconfig b/configs/green_defconfig
|
||||
new file mode 100644
|
||||
index 0000000000..0617d308aa
|
||||
--- /dev/null
|
||||
+++ b/configs/green_defconfig
|
||||
@@ -0,0 +1,74 @@
|
||||
+CONFIG_ARM=y
|
||||
+CONFIG_SKIP_LOWLEVEL_INIT=y
|
||||
+CONFIG_COUNTER_FREQUENCY=24000000
|
||||
+CONFIG_ARCH_ROCKCHIP=y
|
||||
+CONFIG_TEXT_BASE=0x00a00000
|
||||
+CONFIG_SPL_LIBCOMMON_SUPPORT=y
|
||||
+CONFIG_SPL_LIBGENERIC_SUPPORT=y
|
||||
+CONFIG_NR_DRAM_BANKS=2
|
||||
+CONFIG_DEFAULT_DEVICE_TREE="rk3566-ha-green"
|
||||
+CONFIG_ROCKCHIP_RK3568=y
|
||||
+CONFIG_SPL_ROCKCHIP_BACK_TO_BROM=y
|
||||
+CONFIG_SPL_ROCKCHIP_COMMON_BOARD=y
|
||||
+CONFIG_SPL_MMC=y
|
||||
+CONFIG_SPL_SERIAL=y
|
||||
+CONFIG_SPL_STACK_R_ADDR=0x600000
|
||||
+CONFIG_TARGET_EVB_RK3568=y
|
||||
+CONFIG_DEBUG_UART_BASE=0xFE660000
|
||||
+CONFIG_DEBUG_UART_CLOCK=24000000
|
||||
+CONFIG_SYS_LOAD_ADDR=0xc00800
|
||||
+CONFIG_DEBUG_UART=y
|
||||
+CONFIG_HAS_CUSTOM_SYS_INIT_SP_ADDR=y
|
||||
+CONFIG_CUSTOM_SYS_INIT_SP_ADDR=0xc00000
|
||||
+CONFIG_FIT=y
|
||||
+CONFIG_FIT_VERBOSE=y
|
||||
+CONFIG_SPL_LOAD_FIT=y
|
||||
+CONFIG_DEFAULT_FDT_FILE="rockchip/rk3566-ha-green.dtb"
|
||||
+# CONFIG_DISPLAY_CPUINFO is not set
|
||||
+CONFIG_DISPLAY_BOARDINFO_LATE=y
|
||||
+CONFIG_SPL_MAX_SIZE=0x20000
|
||||
+CONFIG_SPL_PAD_TO=0x7f8000
|
||||
+CONFIG_SPL_HAS_BSS_LINKER_SECTION=y
|
||||
+CONFIG_SPL_BSS_START_ADDR=0x4000000
|
||||
+CONFIG_SPL_BSS_MAX_SIZE=0x4000
|
||||
+# CONFIG_SPL_RAW_IMAGE_SUPPORT is not set
|
||||
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
|
||||
+CONFIG_DM_PMIC=y
|
||||
+CONFIG_PMIC_RK8XX=y
|
||||
+CONFIG_SPL_PMIC_RK8XX=y
|
||||
+CONFIG_SPL_STACK=0x400000
|
||||
+CONFIG_SPL_STACK_R=y
|
||||
+CONFIG_SPL_ATF=y
|
||||
+CONFIG_CMD_I2C=y
|
||||
+CONFIG_CMD_GPT=y
|
||||
+CONFIG_CMD_MMC=y
|
||||
+# CONFIG_CMD_SETEXPR is not set
|
||||
+# CONFIG_SPL_DOS_PARTITION is not set
|
||||
+CONFIG_SPL_OF_CONTROL=y
|
||||
+CONFIG_OF_LIVE=y
|
||||
+CONFIG_NET_RANDOM_ETHADDR=y
|
||||
+CONFIG_REGULATOR_RK8XX=y
|
||||
+CONFIG_SPL_REGMAP=y
|
||||
+CONFIG_SPL_SYSCON=y
|
||||
+CONFIG_SPL_CLK=y
|
||||
+CONFIG_ROCKCHIP_GPIO=y
|
||||
+CONFIG_SYS_I2C_ROCKCHIP=y
|
||||
+CONFIG_MISC=y
|
||||
+CONFIG_SUPPORT_EMMC_RPMB=y
|
||||
+CONFIG_MMC_DW=y
|
||||
+CONFIG_MMC_DW_ROCKCHIP=y
|
||||
+CONFIG_MMC_SDHCI=y
|
||||
+CONFIG_MMC_SDHCI_SDMA=y
|
||||
+CONFIG_MMC_SDHCI_ROCKCHIP=y
|
||||
+CONFIG_ETH_DESIGNWARE=y
|
||||
+CONFIG_GMAC_ROCKCHIP=y
|
||||
+CONFIG_REGULATOR_PWM=y
|
||||
+CONFIG_PWM_ROCKCHIP=y
|
||||
+CONFIG_SPL_RAM=y
|
||||
+CONFIG_DM_RESET=y
|
||||
+CONFIG_BAUDRATE=1500000
|
||||
+CONFIG_DEBUG_UART_SHIFT=2
|
||||
+CONFIG_SYS_NS16550_MEM32=y
|
||||
+CONFIG_SYSRESET=y
|
||||
+# CONFIG_BINMAN_FDT is not set
|
||||
+CONFIG_ERRNO_STR=y
|
||||
--
|
||||
2.41.0
|
||||
|
@ -0,0 +1,117 @@
|
||||
From 4ebfe11def93e82d9bd0c43414cb7c6f01a54d19 Mon Sep 17 00:00:00 2001
|
||||
From: Zhangqun Ming <north_sea@qq.com>
|
||||
Date: Fri, 14 Jul 2023 14:13:39 +0000
|
||||
Subject: [PATCH 1/2] configs: green: Support USB boot
|
||||
|
||||
---
|
||||
configs/green_defconfig | 52 ++++++++++++++++++++++++++++-------------
|
||||
1 file changed, 36 insertions(+), 16 deletions(-)
|
||||
|
||||
diff --git a/configs/green_defconfig b/configs/green_defconfig
|
||||
index 0617d308..14960b67 100644
|
||||
--- a/configs/green_defconfig
|
||||
+++ b/configs/green_defconfig
|
||||
@@ -6,48 +6,54 @@ CONFIG_TEXT_BASE=0x00a00000
|
||||
CONFIG_SPL_LIBCOMMON_SUPPORT=y
|
||||
CONFIG_SPL_LIBGENERIC_SUPPORT=y
|
||||
CONFIG_NR_DRAM_BANKS=2
|
||||
+CONFIG_HAS_CUSTOM_SYS_INIT_SP_ADDR=y
|
||||
+CONFIG_CUSTOM_SYS_INIT_SP_ADDR=0xc00000
|
||||
+CONFIG_SF_DEFAULT_SPEED=24000000
|
||||
+CONFIG_SF_DEFAULT_MODE=0x2000
|
||||
CONFIG_DEFAULT_DEVICE_TREE="rk3566-ha-green"
|
||||
CONFIG_ROCKCHIP_RK3568=y
|
||||
-CONFIG_SPL_ROCKCHIP_BACK_TO_BROM=y
|
||||
CONFIG_SPL_ROCKCHIP_COMMON_BOARD=y
|
||||
-CONFIG_SPL_MMC=y
|
||||
+CONFIG_ROCKCHIP_SPI_IMAGE=y
|
||||
CONFIG_SPL_SERIAL=y
|
||||
CONFIG_SPL_STACK_R_ADDR=0x600000
|
||||
-CONFIG_TARGET_EVB_RK3568=y
|
||||
+CONFIG_SPL_STACK=0x400000
|
||||
CONFIG_DEBUG_UART_BASE=0xFE660000
|
||||
CONFIG_DEBUG_UART_CLOCK=24000000
|
||||
+CONFIG_SPL_SPI_FLASH_SUPPORT=y
|
||||
+CONFIG_SPL_SPI=y
|
||||
CONFIG_SYS_LOAD_ADDR=0xc00800
|
||||
CONFIG_DEBUG_UART=y
|
||||
-CONFIG_HAS_CUSTOM_SYS_INIT_SP_ADDR=y
|
||||
-CONFIG_CUSTOM_SYS_INIT_SP_ADDR=0xc00000
|
||||
CONFIG_FIT=y
|
||||
CONFIG_FIT_VERBOSE=y
|
||||
+CONFIG_SPL_FIT_SIGNATURE=y
|
||||
CONFIG_SPL_LOAD_FIT=y
|
||||
+CONFIG_LEGACY_IMAGE_FORMAT=y
|
||||
CONFIG_DEFAULT_FDT_FILE="rockchip/rk3566-ha-green.dtb"
|
||||
# CONFIG_DISPLAY_CPUINFO is not set
|
||||
CONFIG_DISPLAY_BOARDINFO_LATE=y
|
||||
-CONFIG_SPL_MAX_SIZE=0x20000
|
||||
+CONFIG_SPL_MAX_SIZE=0x40000
|
||||
CONFIG_SPL_PAD_TO=0x7f8000
|
||||
CONFIG_SPL_HAS_BSS_LINKER_SECTION=y
|
||||
CONFIG_SPL_BSS_START_ADDR=0x4000000
|
||||
CONFIG_SPL_BSS_MAX_SIZE=0x4000
|
||||
# CONFIG_SPL_RAW_IMAGE_SUPPORT is not set
|
||||
# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
|
||||
-CONFIG_DM_PMIC=y
|
||||
-CONFIG_PMIC_RK8XX=y
|
||||
-CONFIG_SPL_PMIC_RK8XX=y
|
||||
-CONFIG_SPL_STACK=0x400000
|
||||
CONFIG_SPL_STACK_R=y
|
||||
+CONFIG_SPL_SPI_LOAD=y
|
||||
+CONFIG_SYS_SPI_U_BOOT_OFFS=0x60000
|
||||
CONFIG_SPL_ATF=y
|
||||
-CONFIG_CMD_I2C=y
|
||||
+CONFIG_CMD_GPIO=y
|
||||
CONFIG_CMD_GPT=y
|
||||
+CONFIG_CMD_I2C=y
|
||||
CONFIG_CMD_MMC=y
|
||||
+CONFIG_CMD_USB=y
|
||||
# CONFIG_CMD_SETEXPR is not set
|
||||
+CONFIG_CMD_PMIC=y
|
||||
+CONFIG_CMD_REGULATOR=y
|
||||
# CONFIG_SPL_DOS_PARTITION is not set
|
||||
CONFIG_SPL_OF_CONTROL=y
|
||||
CONFIG_OF_LIVE=y
|
||||
-CONFIG_NET_RANDOM_ETHADDR=y
|
||||
-CONFIG_REGULATOR_RK8XX=y
|
||||
+CONFIG_OF_SPL_REMOVE_PROPS="clock-names interrupt-parent assigned-clocks assigned-clock-rates assigned-clock-parents"
|
||||
CONFIG_SPL_REGMAP=y
|
||||
CONFIG_SPL_SYSCON=y
|
||||
CONFIG_SPL_CLK=y
|
||||
@@ -60,15 +66,29 @@ CONFIG_MMC_DW_ROCKCHIP=y
|
||||
CONFIG_MMC_SDHCI=y
|
||||
CONFIG_MMC_SDHCI_SDMA=y
|
||||
CONFIG_MMC_SDHCI_ROCKCHIP=y
|
||||
+CONFIG_SPI_FLASH_MACRONIX=y
|
||||
+CONFIG_SPI_FLASH_XTX=y
|
||||
CONFIG_ETH_DESIGNWARE=y
|
||||
CONFIG_GMAC_ROCKCHIP=y
|
||||
-CONFIG_REGULATOR_PWM=y
|
||||
+CONFIG_PHY_ROCKCHIP_INNO_USB2=y
|
||||
+CONFIG_PHY_ROCKCHIP_NANENG_COMBOPHY=y
|
||||
+CONFIG_SPL_PINCTRL=y
|
||||
+CONFIG_DM_PMIC=y
|
||||
+CONFIG_PMIC_RK8XX=y
|
||||
+CONFIG_REGULATOR_RK8XX=y
|
||||
CONFIG_PWM_ROCKCHIP=y
|
||||
CONFIG_SPL_RAM=y
|
||||
-CONFIG_DM_RESET=y
|
||||
CONFIG_BAUDRATE=1500000
|
||||
CONFIG_DEBUG_UART_SHIFT=2
|
||||
CONFIG_SYS_NS16550_MEM32=y
|
||||
+CONFIG_ROCKCHIP_SFC=y
|
||||
CONFIG_SYSRESET=y
|
||||
-# CONFIG_BINMAN_FDT is not set
|
||||
+CONFIG_USB=y
|
||||
+CONFIG_USB_XHCI_HCD=y
|
||||
+CONFIG_USB_XHCI_DWC3=y
|
||||
+CONFIG_USB_EHCI_HCD=y
|
||||
+CONFIG_USB_EHCI_GENERIC=y
|
||||
+CONFIG_USB_OHCI_HCD=y
|
||||
+CONFIG_USB_OHCI_GENERIC=y
|
||||
+CONFIG_USB_DWC3=y
|
||||
CONFIG_ERRNO_STR=y
|
||||
--
|
||||
2.25.1
|
||||
|
@ -0,0 +1,50 @@
|
||||
From fee073b1c267ac318b7eb7b52b1098bd2aaf09df Mon Sep 17 00:00:00 2001
|
||||
From: Zhangqun Ming <north_sea@qq.com>
|
||||
Date: Fri, 14 Jul 2023 14:14:10 +0000
|
||||
Subject: [PATCH 2/2] arch: arm: dts: rk3566: green: boot order
|
||||
|
||||
---
|
||||
arch/arm/dts/rk3566-ha-green-u-boot.dtsi | 6 +++++-
|
||||
arch/arm/dts/rk3566-ha-green.dts | 2 +-
|
||||
2 files changed, 6 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git a/arch/arm/dts/rk3566-ha-green-u-boot.dtsi b/arch/arm/dts/rk3566-ha-green-u-boot.dtsi
|
||||
index 83fa66d5..7f2ed298 100644
|
||||
--- a/arch/arm/dts/rk3566-ha-green-u-boot.dtsi
|
||||
+++ b/arch/arm/dts/rk3566-ha-green-u-boot.dtsi
|
||||
@@ -9,7 +9,7 @@
|
||||
/ {
|
||||
chosen {
|
||||
stdout-path = &uart2;
|
||||
- u-boot,spl-boot-order = "same-as-spl", &sdhci, &sdmmc0;
|
||||
+ u-boot,spl-boot-order = &spiflash, &sdmmc0, &sdhci;
|
||||
};
|
||||
};
|
||||
|
||||
@@ -21,6 +21,10 @@
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
+&spiflash {
|
||||
+ bootph-all;
|
||||
+};
|
||||
+
|
||||
&uart2 {
|
||||
clock-frequency = <24000000>;
|
||||
bootph-all;
|
||||
diff --git a/arch/arm/dts/rk3566-ha-green.dts b/arch/arm/dts/rk3566-ha-green.dts
|
||||
index d0830df4..3952c8c5 100644
|
||||
--- a/arch/arm/dts/rk3566-ha-green.dts
|
||||
+++ b/arch/arm/dts/rk3566-ha-green.dts
|
||||
@@ -563,7 +563,7 @@
|
||||
#size-cells = <0>;
|
||||
status = "okay";
|
||||
|
||||
- flash@0 {
|
||||
+ spiflash: flash@0 {
|
||||
compatible = "jedec,spi-nor";
|
||||
reg = <0>;
|
||||
spi-max-frequency = <100000000>;
|
||||
--
|
||||
2.25.1
|
||||
|
@ -0,0 +1,155 @@
|
||||
From 0de4db17b62e1fa47b788d921a76bc7a0328b0a9 Mon Sep 17 00:00:00 2001
|
||||
From: Zhangqun Ming <north_sea@qq.com>
|
||||
Date: Sat, 15 Jul 2023 08:46:09 +0000
|
||||
Subject: [PATCH] arch: arm: dts: green: spi nor uboot
|
||||
|
||||
---
|
||||
arch/arm/dts/rk3566-ha-green-u-boot.dtsi | 88 +++++++++++++++++++++++-
|
||||
arch/arm/dts/rk3566-ha-green.dts | 4 +-
|
||||
configs/green_defconfig | 2 +
|
||||
3 files changed, 91 insertions(+), 3 deletions(-)
|
||||
|
||||
diff --git a/arch/arm/dts/rk3566-ha-green-u-boot.dtsi b/arch/arm/dts/rk3566-ha-green-u-boot.dtsi
|
||||
index 7f2ed298..fa98078f 100644
|
||||
--- a/arch/arm/dts/rk3566-ha-green-u-boot.dtsi
|
||||
+++ b/arch/arm/dts/rk3566-ha-green-u-boot.dtsi
|
||||
@@ -13,15 +13,96 @@
|
||||
};
|
||||
};
|
||||
|
||||
+&emmc_bus8 {
|
||||
+ bootph-all;
|
||||
+};
|
||||
+
|
||||
+&emmc_clk {
|
||||
+ bootph-all;
|
||||
+};
|
||||
+
|
||||
+&emmc_cmd {
|
||||
+ bootph-all;
|
||||
+};
|
||||
+
|
||||
+&emmc_datastrobe {
|
||||
+ bootph-all;
|
||||
+};
|
||||
+
|
||||
+&fspi_pins {
|
||||
+ bootph-all;
|
||||
+};
|
||||
+
|
||||
+&pinctrl {
|
||||
+ bootph-all;
|
||||
+};
|
||||
+
|
||||
+&pcfg_pull_none {
|
||||
+ bootph-all;
|
||||
+};
|
||||
+
|
||||
+&pcfg_pull_up_drv_level_2 {
|
||||
+ bootph-all;
|
||||
+};
|
||||
+
|
||||
+&pcfg_pull_up {
|
||||
+ bootph-all;
|
||||
+};
|
||||
+
|
||||
+&sdmmc0_bus4 {
|
||||
+ bootph-all;
|
||||
+};
|
||||
+
|
||||
+&sdmmc0_clk {
|
||||
+ bootph-all;
|
||||
+};
|
||||
+
|
||||
+&sdmmc0_cmd {
|
||||
+ bootph-all;
|
||||
+};
|
||||
+
|
||||
+&sdmmc0_det {
|
||||
+ bootph-all;
|
||||
+};
|
||||
+
|
||||
&sdmmc0 {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&sdhci {
|
||||
+ cap-mmc-highspeed;
|
||||
+ mmc-ddr-1_8v;
|
||||
+ mmc-hs200-1_8v;
|
||||
+ mmc-hs400-1_8v;
|
||||
+ mmc-hs400-enhanced-strobe;
|
||||
+};
|
||||
+
|
||||
+&sfc {
|
||||
+ bootph-all;
|
||||
+ u-boot,spl-sfc-no-dma;
|
||||
+ #address-cells = <1>;
|
||||
+ #size-cells = <0>;
|
||||
status = "okay";
|
||||
+
|
||||
+ spiflash: flash@0 {
|
||||
+ bootph-all;
|
||||
+ compatible = "jedec,spi-nor";
|
||||
+ reg = <0>;
|
||||
+ spi-max-frequency = <24000000>;
|
||||
+ spi-rx-bus-width = <1>;
|
||||
+ spi-tx-bus-width = <1>;
|
||||
+ };
|
||||
};
|
||||
|
||||
-&spiflash {
|
||||
+&sdmmc2 {
|
||||
+ status = "disabled";
|
||||
+};
|
||||
+
|
||||
+&uart1 {
|
||||
+ status = "disabled";
|
||||
+};
|
||||
+
|
||||
+&uart2m0_xfer {
|
||||
bootph-all;
|
||||
};
|
||||
|
||||
@@ -29,4 +110,9 @@
|
||||
clock-frequency = <24000000>;
|
||||
bootph-all;
|
||||
u-boot,dm-pre-reloc;
|
||||
+ status = "okay";
|
||||
};
|
||||
+
|
||||
+&vcc5v0_usb_host {
|
||||
+ regulator-boot-on;
|
||||
+};
|
||||
\ No newline at end of file
|
||||
diff --git a/arch/arm/dts/rk3566-ha-green.dts b/arch/arm/dts/rk3566-ha-green.dts
|
||||
index 3952c8c5..52b4baa9 100644
|
||||
--- a/arch/arm/dts/rk3566-ha-green.dts
|
||||
+++ b/arch/arm/dts/rk3566-ha-green.dts
|
||||
@@ -566,8 +566,8 @@
|
||||
spiflash: flash@0 {
|
||||
compatible = "jedec,spi-nor";
|
||||
reg = <0>;
|
||||
- spi-max-frequency = <100000000>;
|
||||
- spi-rx-bus-width = <4>;
|
||||
+ spi-max-frequency = <25000000>;
|
||||
+ spi-rx-bus-width = <1>;
|
||||
spi-tx-bus-width = <1>;
|
||||
|
||||
partitions {
|
||||
diff --git a/configs/green_defconfig b/configs/green_defconfig
|
||||
index 14960b67..5f94c062 100644
|
||||
--- a/configs/green_defconfig
|
||||
+++ b/configs/green_defconfig
|
||||
@@ -68,6 +68,8 @@ CONFIG_MMC_SDHCI_SDMA=y
|
||||
CONFIG_MMC_SDHCI_ROCKCHIP=y
|
||||
CONFIG_SPI_FLASH_MACRONIX=y
|
||||
CONFIG_SPI_FLASH_XTX=y
|
||||
+CONFIG_SPI_FLASH_GIGADEVICE=y
|
||||
+CONFIG_SPI_FLASH_WINBOND=y
|
||||
CONFIG_ETH_DESIGNWARE=y
|
||||
CONFIG_GMAC_ROCKCHIP=y
|
||||
CONFIG_PHY_ROCKCHIP_INNO_USB2=y
|
||||
--
|
||||
2.25.1
|
||||
|
@ -0,0 +1,137 @@
|
||||
diff --git a/arch/arm/dts/rk3566-ha-green.dts b/arch/arm/dts/rk3566-ha-green.dts
|
||||
index 52b4baa9..1a8c13e9 100644
|
||||
--- a/arch/arm/dts/rk3566-ha-green.dts
|
||||
+++ b/arch/arm/dts/rk3566-ha-green.dts
|
||||
@@ -449,6 +449,13 @@
|
||||
reg = <0x51>;
|
||||
#clock-cells = <0>;
|
||||
};
|
||||
+
|
||||
+ eeprom: eeprom@50 {
|
||||
+ compatible = "atmel,24c32";
|
||||
+ reg = <0x50>;
|
||||
+ pagesize = <32>;
|
||||
+ };
|
||||
+
|
||||
};
|
||||
|
||||
&i2s0_8ch {
|
||||
diff --git a/board/rockchip/evb_rk3568/Kconfig b/board/rockchip/evb_rk3568/Kconfig
|
||||
index f3d3a7e1..8bf457da 100644
|
||||
--- a/board/rockchip/evb_rk3568/Kconfig
|
||||
+++ b/board/rockchip/evb_rk3568/Kconfig
|
||||
@@ -12,4 +12,7 @@ config SYS_CONFIG_NAME
|
||||
config BOARD_SPECIFIC_OPTIONS # dummy
|
||||
def_bool y
|
||||
|
||||
+config UBOOT_GREEN_BOARD
|
||||
+ tristate "uboot green boadrd"
|
||||
+
|
||||
endif
|
||||
diff --git a/board/rockchip/evb_rk3568/Makefile b/board/rockchip/evb_rk3568/Makefile
|
||||
index cbda95fe..e616da10 100644
|
||||
--- a/board/rockchip/evb_rk3568/Makefile
|
||||
+++ b/board/rockchip/evb_rk3568/Makefile
|
||||
@@ -5,3 +5,4 @@
|
||||
#
|
||||
|
||||
obj-y += evb_rk3568.o
|
||||
+obj-$(CONFIG_UBOOT_GREEN_BOARD) += nabucasa/green/board.o
|
||||
diff --git a/board/rockchip/evb_rk3568/nabucasa/green/board.c b/board/rockchip/evb_rk3568/nabucasa/green/board.c
|
||||
new file mode 100644
|
||||
index 00000000..8d24b02a
|
||||
--- /dev/null
|
||||
+++ b/board/rockchip/evb_rk3568/nabucasa/green/board.c
|
||||
@@ -0,0 +1,91 @@
|
||||
+// SPDX-License-Identifier: GPL-2.0
|
||||
+/*
|
||||
+ * Copyright 2022 Google LLC
|
||||
+ */
|
||||
+#include <net.h>
|
||||
+#include <errno.h>
|
||||
+#include <dm/device.h>
|
||||
+#include <dm/uclass.h>
|
||||
+#include <common.h>
|
||||
+#include <dm.h>
|
||||
+#include <eeprom.h>
|
||||
+#include <env.h>
|
||||
+#include <i2c_eeprom.h>
|
||||
+#include <netdev.h>
|
||||
+
|
||||
+
|
||||
+int misc_init_r(void)
|
||||
+{
|
||||
+
|
||||
+ #define CONTENT_SIZE 44
|
||||
+ #define ETHADDR_OFFSET 0X22
|
||||
+ #define ETHADDR_LEN 6
|
||||
+ #define SERIALNUM_OFFSET 0X10
|
||||
+ #define SERIALNUM_LEN 18
|
||||
+ #define VERSION_OFFSET 0X0C
|
||||
+ #define VERSION_LEN 4
|
||||
+
|
||||
+ unsigned char data[CONTENT_SIZE];
|
||||
+ unsigned char ethaddr[ETHADDR_LEN];
|
||||
+ unsigned char serialnum[SERIALNUM_LEN + 1];
|
||||
+ unsigned char version[VERSION_LEN];
|
||||
+ unsigned char fdtfile_name[32] = "rk3566-ha-green.dtb";
|
||||
+
|
||||
+ const char *ETHADDR_NAME = "ethaddr";
|
||||
+ struct udevice *dev;
|
||||
+ int ret;
|
||||
+
|
||||
+
|
||||
+ if (env_get(ETHADDR_NAME)){
|
||||
+ printf("ethaddr not null\n");
|
||||
+ ret = 0;
|
||||
+ goto exit;
|
||||
+ }
|
||||
+
|
||||
+
|
||||
+ ret = uclass_first_device_err(UCLASS_I2C_EEPROM, &dev);
|
||||
+ if (ret){
|
||||
+ printf("UCLASS_I2C_EEPROM get error\n");
|
||||
+ goto exit;
|
||||
+ }
|
||||
+
|
||||
+
|
||||
+ ret = i2c_eeprom_read(dev, 0, data, sizeof(data));
|
||||
+ if (ret){
|
||||
+ printf("UCLASS_I2C_EEPROM read error %d\n", ret);
|
||||
+ goto exit;
|
||||
+ }
|
||||
+
|
||||
+ if((data[0] == 3) && (data[1] == 5) && (data[2] == 6) && (data[3] == 6))
|
||||
+ {
|
||||
+ printf("header ok\n");
|
||||
+
|
||||
+ memcpy(version , data + VERSION_OFFSET, VERSION_LEN);
|
||||
+ if(!strcmp(version, "00A0")){
|
||||
+ sprintf(fdtfile_name, "%s", "rk3566-ha-green.dtb");
|
||||
+ printf("overlay fdtfile_name = %s\n", fdtfile_name);
|
||||
+ }
|
||||
+
|
||||
+
|
||||
+
|
||||
+
|
||||
+
|
||||
+ memcpy(serialnum, data + SERIALNUM_OFFSET, SERIALNUM_LEN);
|
||||
+ serialnum[SERIALNUM_LEN] = 0;
|
||||
+ env_set("serial#", serialnum);
|
||||
+
|
||||
+
|
||||
+ memcpy(ethaddr, data + ETHADDR_OFFSET, ETHADDR_LEN);
|
||||
+
|
||||
+ if (is_valid_ethaddr(ethaddr))
|
||||
+ eth_env_set_enetaddr(ETHADDR_NAME, ethaddr);
|
||||
+ }
|
||||
+
|
||||
+
|
||||
+exit:
|
||||
+ env_set("fdtfile", fdtfile_name);
|
||||
+
|
||||
+
|
||||
+
|
||||
+ return 0;
|
||||
+}
|
||||
\ No newline at end of file
|
@ -0,0 +1,25 @@
|
||||
From cbea8d765c41873dc4fde70aed0f919ab8953008 Mon Sep 17 00:00:00 2001
|
||||
From: syan <syan.cham@gmail.com>
|
||||
Date: Mon, 31 Jul 2023 09:39:55 +0000
|
||||
Subject: [PATCH] green: spl loader uboot order: sd-emmc-spi_nor
|
||||
|
||||
---
|
||||
arch/arm/dts/rk3566-ha-green-u-boot.dtsi | 2 +-
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
|
||||
diff --git a/arch/arm/dts/rk3566-ha-green-u-boot.dtsi b/arch/arm/dts/rk3566-ha-green-u-boot.dtsi
|
||||
index fa98078f..48d7b615 100644
|
||||
--- a/arch/arm/dts/rk3566-ha-green-u-boot.dtsi
|
||||
+++ b/arch/arm/dts/rk3566-ha-green-u-boot.dtsi
|
||||
@@ -9,7 +9,7 @@
|
||||
/ {
|
||||
chosen {
|
||||
stdout-path = &uart2;
|
||||
- u-boot,spl-boot-order = &spiflash, &sdmmc0, &sdhci;
|
||||
+ u-boot,spl-boot-order = &sdmmc0, &sdhci, &spiflash;
|
||||
};
|
||||
};
|
||||
|
||||
--
|
||||
2.25.1
|
||||
|
105
buildroot-external/board/nabucasa/green/uboot-boot.ush
Executable file
105
buildroot-external/board/nabucasa/green/uboot-boot.ush
Executable file
@ -0,0 +1,105 @@
|
||||
if test "${devtype}" = "usb_mass_storage"; then
|
||||
setenv devtype "usb"
|
||||
fi
|
||||
echo "boot devtype: ${devtype}:${devnum}"
|
||||
|
||||
part start ${devtype} ${devnum} 6 dev_env
|
||||
${devtype} dev ${devnum}
|
||||
|
||||
setenv loadbootstate " \
|
||||
echo 'loading env...'; \
|
||||
${devtype} read ${ramdisk_addr_r} ${dev_env} 0x40; \
|
||||
env import -c ${ramdisk_addr_r} 0x8000;"
|
||||
|
||||
setenv storebootstate " \
|
||||
echo 'storing env...'; \
|
||||
env export -c -s 0x8000 ${ramdisk_addr_r} BOOT_ORDER BOOT_A_LEFT BOOT_B_LEFT MACHINE_ID; \
|
||||
${devtype} write ${ramdisk_addr_r} ${dev_env} 0x40;"
|
||||
|
||||
run loadbootstate
|
||||
test -n "${BOOT_ORDER}" || setenv BOOT_ORDER "A B"
|
||||
test -n "${BOOT_A_LEFT}" || setenv BOOT_A_LEFT 3
|
||||
test -n "${BOOT_B_LEFT}" || setenv BOOT_B_LEFT 3
|
||||
|
||||
# Allows ConditionFirstBoot=
|
||||
test -n "${MACHINE_ID}" || setenv BOOT_CONDITION "systemd.condition-first-boot=true"
|
||||
|
||||
# HassOS bootargs
|
||||
setenv bootargs_hassos "zram.enabled=1 zram.num_devices=3 rootwait net.naming-scheme=v250 systemd.machine_id=${MACHINE_ID} fsck.repair=yes ${BOOT_CONDITION}"
|
||||
|
||||
# HassOS system A/B
|
||||
setenv bootargs_a "root=PARTUUID=8d3d53e3-6d49-4c38-8349-aff6859e82fd rootfstype=squashfs ro"
|
||||
setenv bootargs_b "root=PARTUUID=a3ec664e-32ce-4665-95ea-7ae90ce9aa20 rootfstype=squashfs ro"
|
||||
|
||||
part number ${devtype} ${devnum} hassos-boot boot_partnum
|
||||
|
||||
# Load environment from haos-config.txt
|
||||
if test -e ${devtype} ${devnum}:${boot_partnum} haos-config.txt; then
|
||||
fatload ${devtype} ${devnum}:${boot_partnum} ${ramdisk_addr_r} haos-config.txt
|
||||
env import -t ${ramdisk_addr_r} ${filesize}
|
||||
fi
|
||||
|
||||
# Load extraargs
|
||||
fileenv ${devtype} ${devnum}:${boot_partnum} ${ramdisk_addr_r} cmdline.txt cmdline
|
||||
|
||||
|
||||
# Load device tree
|
||||
ha_version="rk3566-ha-green.dtb"
|
||||
setenv fdtfile $ha_version
|
||||
echo "Loading standard device tree ${fdtfile}"
|
||||
fatload ${devtype} ${devnum}:${boot_partnum} ${fdt_addr_r} ${fdtfile}
|
||||
fdt addr ${fdt_addr_r}
|
||||
|
||||
# load dt overlays
|
||||
fdt resize 65536
|
||||
for overlay_file in ${overlays}; do
|
||||
if fatload ${devtype} ${devnum}:${boot_partnum} ${ramdisk_addr_r} overlays/${overlay_file}.dtbo; then
|
||||
echo "Applying kernel provided DT overlay ${overlay_file}.dtbo"
|
||||
fdt apply ${ramdisk_addr_r} || setenv overlay_error "true"
|
||||
fi
|
||||
done
|
||||
if test "${overlay_error}" = "true"; then
|
||||
echo "Error applying DT overlays, restoring original DT"
|
||||
fatload ${devtype} ${devnum}:${boot_partnum} ${fdt_addr_r} ${fdtfile}
|
||||
fi
|
||||
|
||||
setenv bootargs
|
||||
for BOOT_SLOT in "${BOOT_ORDER}"; do
|
||||
if test "x${bootargs}" != "x"; then
|
||||
# skip remaining slots
|
||||
elif test "x${BOOT_SLOT}" = "xA"; then
|
||||
if test ${BOOT_A_LEFT} -gt 0; then
|
||||
setexpr BOOT_A_LEFT ${BOOT_A_LEFT} - 1
|
||||
echo "Trying to boot slot A, ${BOOT_A_LEFT} attempts remaining. Loading kernel ..."
|
||||
part number ${devtype} ${devnum} hassos-kernel0 kernel_partnum
|
||||
if load ${devtype} ${devnum}:${kernel_partnum} ${kernel_addr_r} Image; then
|
||||
setenv bootargs "${bootargs_hassos} ${bootargs_a} rauc.slot=A ${cmdline}"
|
||||
fi
|
||||
fi
|
||||
elif test "x${BOOT_SLOT}" = "xB"; then
|
||||
if test ${BOOT_B_LEFT} -gt 0; then
|
||||
setexpr BOOT_B_LEFT ${BOOT_B_LEFT} - 1
|
||||
echo "Trying to boot slot B, ${BOOT_B_LEFT} attempts remaining. Loading kernel ..."
|
||||
part number ${devtype} ${devnum} hassos-kernel1 kernel_partnum
|
||||
if load ${devtype} ${devnum}:${kernel_partnum} ${kernel_addr_r} Image; then
|
||||
setenv bootargs "${bootargs_hassos} ${bootargs_b} rauc.slot=B ${cmdline}"
|
||||
fi
|
||||
fi
|
||||
fi
|
||||
done
|
||||
|
||||
if test -n "${bootargs}"; then
|
||||
run storebootstate
|
||||
else
|
||||
echo "No valid slot found, resetting tries to 3"
|
||||
setenv BOOT_A_LEFT 3
|
||||
setenv BOOT_B_LEFT 3
|
||||
run storebootstate
|
||||
reset
|
||||
fi
|
||||
|
||||
echo "Starting kernel"
|
||||
booti ${kernel_addr_r} - ${fdt_addr_r}
|
||||
|
||||
echo "Boot failed, resetting..."
|
||||
reset
|
3
buildroot-external/board/nabucasa/green/uboot.config
Normal file
3
buildroot-external/board/nabucasa/green/uboot.config
Normal file
@ -0,0 +1,3 @@
|
||||
CONFIG_ENV_OVERWRITE=y
|
||||
CONFIG_UBOOT_GREEN_BOARD=y
|
||||
CONFIG_I2C_EEPROM=y
|
4295
buildroot-external/board/nabucasa/kernel-rockchip.config
Normal file
4295
buildroot-external/board/nabucasa/kernel-rockchip.config
Normal file
File diff suppressed because it is too large
Load Diff
@ -9,24 +9,6 @@ CONFIG_SCSI_HPSA=y
|
||||
CONFIG_USB_XHCI_HCD=y
|
||||
CONFIG_BLK_DEV_NVME=y
|
||||
|
||||
CONFIG_IGB=y
|
||||
CONFIG_IGC=m
|
||||
|
||||
CONFIG_NET_VENDOR_ATHEROS=y
|
||||
CONFIG_ATL2=m
|
||||
CONFIG_ATL1=m
|
||||
CONFIG_ATL1C=m
|
||||
CONFIG_ATL1E=m
|
||||
CONFIG_ALX=m
|
||||
|
||||
CONFIG_NET_VENDOR_BROADCOM=y
|
||||
CONFIG_B44=m
|
||||
CONFIG_BCMGENET=m
|
||||
CONFIG_BNX2=m
|
||||
CONFIG_TIGON3=m
|
||||
CONFIG_BNX2X=m
|
||||
CONFIG_BNXT=m
|
||||
|
||||
CONFIG_WLAN_VENDOR_INTEL=y
|
||||
CONFIG_IWL4965=m
|
||||
CONFIG_IWL3945=m
|
||||
@ -37,6 +19,11 @@ CONFIG_IWLMVM=m
|
||||
CONFIG_WLAN_VENDOR_REALTEK=y
|
||||
CONFIG_RTL_CARDS=m
|
||||
CONFIG_RTL8723BE=y
|
||||
CONFIG_RTL8723BS=y
|
||||
CONFIG_RTW88=m
|
||||
CONFIG_RTW88_8821CE=m
|
||||
|
||||
CONFIG_BCMA=m
|
||||
|
||||
CONFIG_SYSFB=y
|
||||
|
||||
@ -166,5 +153,6 @@ CONFIG_SND_SOC_SOF_XTENSA=m
|
||||
CONFIG_THINKPAD_ACPI=m
|
||||
|
||||
CONFIG_SENSORS_K10TEMP=m
|
||||
CONFIG_SENSORS_CORETEMP=m
|
||||
|
||||
CONFIG_UHID=y
|
||||
|
@ -70,6 +70,19 @@ CONFIG_SND_XEN_FRONTEND=y
|
||||
CONFIG_XEN_PVCALLS_FRONTEND=m
|
||||
CONFIG_XEN_WDT=y
|
||||
|
||||
CONFIG_WLAN_VENDOR_INTEL=y
|
||||
CONFIG_IWL4965=m
|
||||
CONFIG_IWL3945=m
|
||||
CONFIG_IWLWIFI=m
|
||||
CONFIG_IWLDVM=m
|
||||
CONFIG_IWLMVM=m
|
||||
|
||||
CONFIG_WLAN_VENDOR_REALTEK=y
|
||||
CONFIG_RTL_CARDS=m
|
||||
CONFIG_RTL8723BE=y
|
||||
|
||||
CONFIG_BCMA=m
|
||||
|
||||
CONFIG_SYSFB=y
|
||||
CONFIG_SYSFB_SIMPLEFB=y
|
||||
|
||||
|
@ -19,7 +19,7 @@ function hassos_pre_image() {
|
||||
else
|
||||
cp "${BOARD_DIR}/../cmdline.txt" "${BOOT_DATA}/cmdline.txt"
|
||||
fi
|
||||
cp "${BINARIES_DIR}"/*.dtbo "${BOOT_DATA}/overlays/"
|
||||
cp "${BINARIES_DIR}"/*.dtbo "${BOOT_DATA}/overlays/" 2>/dev/null || true
|
||||
|
||||
# EEPROM update for Raspberry Pi 4/Compute Module 4
|
||||
if grep -Eq "^BR2_PACKAGE_RPI_EEPROM=y$" "${BR2_CONFIG}"; then
|
||||
|
@ -1,5 +1,5 @@
|
||||
From 135d886b4e5077c8fa96a5449a70d81ae9c1c3d0 Mon Sep 17 00:00:00 2001
|
||||
Message-Id: <135d886b4e5077c8fa96a5449a70d81ae9c1c3d0.1668448794.git.stefan@agner.ch>
|
||||
From 01b4d231cbb66ca193ba422a22d25c75d21ff8ee Mon Sep 17 00:00:00 2001
|
||||
Message-Id: <01b4d231cbb66ca193ba422a22d25c75d21ff8ee.1682350496.git.stefan@agner.ch>
|
||||
From: Pascal Vizeli <pvizeli@syshack.ch>
|
||||
Date: Tue, 10 Dec 2019 09:48:46 +0000
|
||||
Subject: [PATCH] rpi: Use CONFIG_OF_BOARD instead of CONFIG_EMBED
|
||||
@ -79,5 +79,5 @@ index 1d356b4b2e..6f345c790b 100644
|
||||
CONFIG_SYS_RELOC_GD_ENV_ADDR=y
|
||||
CONFIG_ENV_VARS_UBOOT_RUNTIME_CONFIG=y
|
||||
--
|
||||
2.38.1
|
||||
2.40.0
|
||||
|
||||
|
@ -1,7 +1,7 @@
|
||||
From 191b5f4e0408e40f35379fdaab6b37a7ad93e298 Mon Sep 17 00:00:00 2001
|
||||
Message-Id: <191b5f4e0408e40f35379fdaab6b37a7ad93e298.1668448794.git.stefan@agner.ch>
|
||||
In-Reply-To: <135d886b4e5077c8fa96a5449a70d81ae9c1c3d0.1668448794.git.stefan@agner.ch>
|
||||
References: <135d886b4e5077c8fa96a5449a70d81ae9c1c3d0.1668448794.git.stefan@agner.ch>
|
||||
From 8870872f359771effddd74bcb4c7e0a4316d99f7 Mon Sep 17 00:00:00 2001
|
||||
Message-Id: <8870872f359771effddd74bcb4c7e0a4316d99f7.1682350496.git.stefan@agner.ch>
|
||||
In-Reply-To: <01b4d231cbb66ca193ba422a22d25c75d21ff8ee.1682350496.git.stefan@agner.ch>
|
||||
References: <01b4d231cbb66ca193ba422a22d25c75d21ff8ee.1682350496.git.stefan@agner.ch>
|
||||
From: Stefan Agner <stefan@agner.ch>
|
||||
Date: Tue, 29 Dec 2020 23:34:52 +0100
|
||||
Subject: [PATCH] rpi: add NVMe to boot order
|
||||
@ -40,5 +40,5 @@ index cd8fe8b518..7257659932 100644
|
||||
BOOT_TARGET_PXE(func) \
|
||||
BOOT_TARGET_DHCP(func)
|
||||
--
|
||||
2.38.1
|
||||
2.40.0
|
||||
|
||||
|
@ -1,7 +1,7 @@
|
||||
From 644bd3743aa8771ef7ecb7b7239308d6da2a5b35 Mon Sep 17 00:00:00 2001
|
||||
Message-Id: <644bd3743aa8771ef7ecb7b7239308d6da2a5b35.1668448794.git.stefan@agner.ch>
|
||||
In-Reply-To: <135d886b4e5077c8fa96a5449a70d81ae9c1c3d0.1668448794.git.stefan@agner.ch>
|
||||
References: <135d886b4e5077c8fa96a5449a70d81ae9c1c3d0.1668448794.git.stefan@agner.ch>
|
||||
From 60afc919643d212439a63908c83523879af21032 Mon Sep 17 00:00:00 2001
|
||||
Message-Id: <60afc919643d212439a63908c83523879af21032.1682350496.git.stefan@agner.ch>
|
||||
In-Reply-To: <01b4d231cbb66ca193ba422a22d25c75d21ff8ee.1682350496.git.stefan@agner.ch>
|
||||
References: <01b4d231cbb66ca193ba422a22d25c75d21ff8ee.1682350496.git.stefan@agner.ch>
|
||||
From: Stefan Agner <stefan@agner.ch>
|
||||
Date: Thu, 23 Sep 2021 23:43:31 +0200
|
||||
Subject: [PATCH] Revert "nvme: Correct the prps per page calculation method"
|
||||
@ -39,5 +39,5 @@ index 6d0d3f3ca2..73db80a294 100644
|
||||
|
||||
length -= (page_size - offset);
|
||||
--
|
||||
2.38.1
|
||||
2.40.0
|
||||
|
||||
|
@ -1,7 +1,7 @@
|
||||
From de29ca70117fb2bfafa8b5699b34e9e94560b785 Mon Sep 17 00:00:00 2001
|
||||
Message-Id: <de29ca70117fb2bfafa8b5699b34e9e94560b785.1668448794.git.stefan@agner.ch>
|
||||
In-Reply-To: <135d886b4e5077c8fa96a5449a70d81ae9c1c3d0.1668448794.git.stefan@agner.ch>
|
||||
References: <135d886b4e5077c8fa96a5449a70d81ae9c1c3d0.1668448794.git.stefan@agner.ch>
|
||||
From cca49e815fbdcbb436f238d362b5f145471153dc Mon Sep 17 00:00:00 2001
|
||||
Message-Id: <cca49e815fbdcbb436f238d362b5f145471153dc.1682350496.git.stefan@agner.ch>
|
||||
In-Reply-To: <01b4d231cbb66ca193ba422a22d25c75d21ff8ee.1682350496.git.stefan@agner.ch>
|
||||
References: <01b4d231cbb66ca193ba422a22d25c75d21ff8ee.1682350496.git.stefan@agner.ch>
|
||||
From: Stefan Agner <stefan@agner.ch>
|
||||
Date: Thu, 7 Oct 2021 12:02:39 +0200
|
||||
Subject: [PATCH] usb: xhci-brcm: Make driver compatible with downstream device
|
||||
@ -29,5 +29,5 @@ index fe17924028..0c6938187b 100644
|
||||
};
|
||||
|
||||
--
|
||||
2.38.1
|
||||
2.40.0
|
||||
|
||||
|
@ -1,7 +1,7 @@
|
||||
From ab2790f8ff78790ea8a9cb0b05cafc55648ebbc4 Mon Sep 17 00:00:00 2001
|
||||
Message-Id: <ab2790f8ff78790ea8a9cb0b05cafc55648ebbc4.1668448794.git.stefan@agner.ch>
|
||||
In-Reply-To: <135d886b4e5077c8fa96a5449a70d81ae9c1c3d0.1668448794.git.stefan@agner.ch>
|
||||
References: <135d886b4e5077c8fa96a5449a70d81ae9c1c3d0.1668448794.git.stefan@agner.ch>
|
||||
From 11176a6ca068e0b572abbe5da8fef1d57bd40e7a Mon Sep 17 00:00:00 2001
|
||||
Message-Id: <11176a6ca068e0b572abbe5da8fef1d57bd40e7a.1682350496.git.stefan@agner.ch>
|
||||
In-Reply-To: <01b4d231cbb66ca193ba422a22d25c75d21ff8ee.1682350496.git.stefan@agner.ch>
|
||||
References: <01b4d231cbb66ca193ba422a22d25c75d21ff8ee.1682350496.git.stefan@agner.ch>
|
||||
From: Stefan Agner <stefan@agner.ch>
|
||||
Date: Thu, 23 Sep 2021 23:52:44 +0200
|
||||
Subject: [PATCH] nvme: improve readability of nvme_setup_prps()
|
||||
@ -45,5 +45,5 @@ index 73db80a294..751abc3cd5 100644
|
||||
prp_pool += page_size;
|
||||
}
|
||||
--
|
||||
2.38.1
|
||||
2.40.0
|
||||
|
||||
|
@ -1,7 +1,7 @@
|
||||
From 2b508d92673738d837576301866dc234d8b008c4 Mon Sep 17 00:00:00 2001
|
||||
Message-Id: <2b508d92673738d837576301866dc234d8b008c4.1668448794.git.stefan@agner.ch>
|
||||
In-Reply-To: <135d886b4e5077c8fa96a5449a70d81ae9c1c3d0.1668448794.git.stefan@agner.ch>
|
||||
References: <135d886b4e5077c8fa96a5449a70d81ae9c1c3d0.1668448794.git.stefan@agner.ch>
|
||||
From 3bccb6eb7f9e8e996cd50409eb96450c313953ec Mon Sep 17 00:00:00 2001
|
||||
Message-Id: <3bccb6eb7f9e8e996cd50409eb96450c313953ec.1682350496.git.stefan@agner.ch>
|
||||
In-Reply-To: <01b4d231cbb66ca193ba422a22d25c75d21ff8ee.1682350496.git.stefan@agner.ch>
|
||||
References: <01b4d231cbb66ca193ba422a22d25c75d21ff8ee.1682350496.git.stefan@agner.ch>
|
||||
From: Stefan Agner <stefan@agner.ch>
|
||||
Date: Thu, 23 Sep 2021 23:58:35 +0200
|
||||
Subject: [PATCH] nvme: Use pointer for CPU addressed buffers
|
||||
@ -260,5 +260,5 @@ index 2cdf8ce320..8ff823cd81 100644
|
||||
/**
|
||||
* nvme_scan_namespace - scan all namespaces attached to NVMe controllers
|
||||
--
|
||||
2.38.1
|
||||
2.40.0
|
||||
|
||||
|
@ -1,7 +1,7 @@
|
||||
From c70926d8b8ad11b8e489e92a8ca9ca93fb201595 Mon Sep 17 00:00:00 2001
|
||||
Message-Id: <c70926d8b8ad11b8e489e92a8ca9ca93fb201595.1668448794.git.stefan@agner.ch>
|
||||
In-Reply-To: <135d886b4e5077c8fa96a5449a70d81ae9c1c3d0.1668448794.git.stefan@agner.ch>
|
||||
References: <135d886b4e5077c8fa96a5449a70d81ae9c1c3d0.1668448794.git.stefan@agner.ch>
|
||||
From ca73fb28fa86b7de243b6713d2756dee445c5f56 Mon Sep 17 00:00:00 2001
|
||||
Message-Id: <ca73fb28fa86b7de243b6713d2756dee445c5f56.1682350496.git.stefan@agner.ch>
|
||||
In-Reply-To: <01b4d231cbb66ca193ba422a22d25c75d21ff8ee.1682350496.git.stefan@agner.ch>
|
||||
References: <01b4d231cbb66ca193ba422a22d25c75d21ff8ee.1682350496.git.stefan@agner.ch>
|
||||
From: Stefan Agner <stefan@agner.ch>
|
||||
Date: Fri, 24 Sep 2021 00:27:39 +0200
|
||||
Subject: [PATCH] nvme: translate virtual addresses into the bus's address
|
||||
@ -172,5 +172,5 @@ index bc1d612dde..f52103c009 100644
|
||||
+
|
||||
#endif /* __DRIVER_NVME_H__ */
|
||||
--
|
||||
2.38.1
|
||||
2.40.0
|
||||
|
||||
|
@ -0,0 +1,50 @@
|
||||
From 89df39ccb71062a06f4548c11fba9101dfd82445 Mon Sep 17 00:00:00 2001
|
||||
Message-Id: <89df39ccb71062a06f4548c11fba9101dfd82445.1682350496.git.stefan@agner.ch>
|
||||
In-Reply-To: <01b4d231cbb66ca193ba422a22d25c75d21ff8ee.1682350496.git.stefan@agner.ch>
|
||||
References: <01b4d231cbb66ca193ba422a22d25c75d21ff8ee.1682350496.git.stefan@agner.ch>
|
||||
From: Stefan Agner <stefan@agner.ch>
|
||||
Date: Mon, 24 Apr 2023 15:44:15 +0200
|
||||
Subject: [PATCH] Revert "pci: Check region ranges are addressable"
|
||||
|
||||
This reverts commit ec8eba8c2d4e10e77699c56918d2078210aa1339.
|
||||
|
||||
This commit seems to cause boot hangs when USB via XHCI is enabled on
|
||||
Raspberry Pi 4 32-bit. Reverting the commit fixes USB device detection
|
||||
and makes the devices boot again.
|
||||
|
||||
Signed-off-by: Stefan Agner <stefan@agner.ch>
|
||||
---
|
||||
drivers/pci/pci-uclass.c | 17 +----------------
|
||||
1 file changed, 1 insertion(+), 16 deletions(-)
|
||||
|
||||
diff --git a/drivers/pci/pci-uclass.c b/drivers/pci/pci-uclass.c
|
||||
index 9343cfc62a..ac2a8c8aa0 100644
|
||||
--- a/drivers/pci/pci-uclass.c
|
||||
+++ b/drivers/pci/pci-uclass.c
|
||||
@@ -1027,22 +1027,7 @@ static int decode_regions(struct pci_controller *hose, ofnode parent_node,
|
||||
|
||||
if (!IS_ENABLED(CONFIG_SYS_PCI_64BIT) &&
|
||||
type == PCI_REGION_MEM && upper_32_bits(pci_addr)) {
|
||||
- debug(" - pci_addr beyond the 32-bit boundary, ignoring\n");
|
||||
- continue;
|
||||
- }
|
||||
-
|
||||
- if (!IS_ENABLED(CONFIG_PHYS_64BIT) && upper_32_bits(addr)) {
|
||||
- debug(" - addr beyond the 32-bit boundary, ignoring\n");
|
||||
- continue;
|
||||
- }
|
||||
-
|
||||
- if (~((pci_addr_t)0) - pci_addr < size) {
|
||||
- debug(" - PCI range exceeds max address, ignoring\n");
|
||||
- continue;
|
||||
- }
|
||||
-
|
||||
- if (~((phys_addr_t)0) - addr < size) {
|
||||
- debug(" - phys range exceeds max address, ignoring\n");
|
||||
+ debug(" - beyond the 32-bit boundary, ignoring\n");
|
||||
continue;
|
||||
}
|
||||
|
||||
--
|
||||
2.40.0
|
||||
|
@ -1,3 +1,5 @@
|
||||
CONFIG_CMD_NVME=y
|
||||
|
||||
# CONFIG_DOS_PARTITION is not set
|
||||
CONFIG_USB_STORAGE=y
|
||||
CONFIG_USB_FUNCTION_MASS_STORAGE=y
|
||||
@ -6,3 +8,6 @@ CONFIG_USB_EHCI_GENERIC=y
|
||||
CONFIG_USB_OHCI_HCD=y
|
||||
|
||||
CONFIG_USB_XHCI_BRCM=y
|
||||
|
||||
CONFIG_NVME=y
|
||||
CONFIG_NVME_PCI=y
|
||||
|
@ -10,9 +10,6 @@ arm_64bit=1
|
||||
# Enable primary UART by default
|
||||
enable_uart=1
|
||||
|
||||
# Free up full-fledged PL011 UART for J11
|
||||
dtoverlay=miniuart-bt
|
||||
|
||||
# No HDMI on Yellow, but we can't set to 16 since we need the full firmware
|
||||
# for codecs
|
||||
gpu_mem=32
|
||||
|
@ -0,0 +1,56 @@
|
||||
From e223dcd78da4356a2aebb2d99412229978ee4c12 Mon Sep 17 00:00:00 2001
|
||||
Message-Id: <e223dcd78da4356a2aebb2d99412229978ee4c12.1685522257.git.stefan@agner.ch>
|
||||
In-Reply-To: <f0292972b38d512fce48384ebbb72b2da46f03bd.1685522257.git.stefan@agner.ch>
|
||||
References: <f0292972b38d512fce48384ebbb72b2da46f03bd.1685522257.git.stefan@agner.ch>
|
||||
From: Phil Elwell <phil@raspberrypi.com>
|
||||
Date: Thu, 23 Feb 2023 09:34:12 +0000
|
||||
Subject: [PATCH] Revert "amba_pl011: Don't use DT aliases for numbering"
|
||||
|
||||
This reverts commit c2fa32a8dae4c4b2638c9f4de5e398e98460e693.
|
||||
|
||||
Consistent, logical UART numbering is desirable, so remove the
|
||||
effective revert.
|
||||
|
||||
See: https://forums.raspberrypi.com/viewtopic.php?t=347868
|
||||
|
||||
Signed-off-by: Phil Elwell <phil@raspberrypi.com>
|
||||
---
|
||||
drivers/tty/serial/amba-pl011.c | 7 -------
|
||||
1 file changed, 7 deletions(-)
|
||||
|
||||
diff --git a/drivers/tty/serial/amba-pl011.c b/drivers/tty/serial/amba-pl011.c
|
||||
index 6f92f581e18c..d301253e26b1 100644
|
||||
--- a/drivers/tty/serial/amba-pl011.c
|
||||
+++ b/drivers/tty/serial/amba-pl011.c
|
||||
@@ -2671,7 +2671,6 @@ static struct uart_driver amba_reg = {
|
||||
.cons = AMBA_CONSOLE,
|
||||
};
|
||||
|
||||
-#if 0
|
||||
static int pl011_probe_dt_alias(int index, struct device *dev)
|
||||
{
|
||||
struct device_node *np;
|
||||
@@ -2703,7 +2702,6 @@ static int pl011_probe_dt_alias(int index, struct device *dev)
|
||||
|
||||
return ret;
|
||||
}
|
||||
-#endif
|
||||
|
||||
/* unregisters the driver also if no more ports are left */
|
||||
static void pl011_unregister_port(struct uart_amba_port *uap)
|
||||
@@ -2755,12 +2753,7 @@ static int pl011_setup_port(struct device *dev, struct uart_amba_port *uap,
|
||||
if (IS_ERR(base))
|
||||
return PTR_ERR(base);
|
||||
|
||||
- /* Don't use DT serial<n> aliases - it causes the device to
|
||||
- be renumbered to ttyAMA1 if it is the second serial port in the
|
||||
- system, even though the other one is ttyS0. The 8250 driver
|
||||
- doesn't use this logic, so always remains ttyS0.
|
||||
index = pl011_probe_dt_alias(index, dev);
|
||||
- */
|
||||
|
||||
uap->port.dev = dev;
|
||||
uap->port.mapbase = mmiobase->start;
|
||||
--
|
||||
2.40.1
|
||||
|
@ -0,0 +1,46 @@
|
||||
From 60e2cd5b6747992f47feef0ee36e2d0d80706c18 Mon Sep 17 00:00:00 2001
|
||||
Message-Id: <60e2cd5b6747992f47feef0ee36e2d0d80706c18.1685523528.git.stefan@agner.ch>
|
||||
In-Reply-To: <f0292972b38d512fce48384ebbb72b2da46f03bd.1685523528.git.stefan@agner.ch>
|
||||
References: <f0292972b38d512fce48384ebbb72b2da46f03bd.1685523528.git.stefan@agner.ch>
|
||||
From: Stefan Agner <stefan@agner.ch>
|
||||
Date: Wed, 31 May 2023 10:57:43 +0200
|
||||
Subject: [PATCH] ARM: dts: bcm2711: yellow: use serial alias to enumerate
|
||||
ttyAMA
|
||||
|
||||
Now that the driver actually uses the index from the serial aliases,
|
||||
make sure to correctly enumerate the serial aliases.
|
||||
|
||||
Signed-off-by: Stefan Agner <stefan@agner.ch>
|
||||
---
|
||||
arch/arm/boot/dts/bcm2711-rpi-cm4-ha-yellow.dts | 8 ++------
|
||||
1 file changed, 2 insertions(+), 6 deletions(-)
|
||||
|
||||
diff --git a/arch/arm/boot/dts/bcm2711-rpi-cm4-ha-yellow.dts b/arch/arm/boot/dts/bcm2711-rpi-cm4-ha-yellow.dts
|
||||
index f7fdf8bbb395..b8f0bc2df062 100644
|
||||
--- a/arch/arm/boot/dts/bcm2711-rpi-cm4-ha-yellow.dts
|
||||
+++ b/arch/arm/boot/dts/bcm2711-rpi-cm4-ha-yellow.dts
|
||||
@@ -17,11 +17,6 @@ / {
|
||||
compatible = "raspberrypi,4-compute-module-ha-yellow", "raspberrypi,4-compute-module", "brcm,bcm2711";
|
||||
model = "Raspberry Pi Compute Module 4 on Home Assistant Yellow";
|
||||
|
||||
- aliases {
|
||||
- serial4 = &uart4;
|
||||
- serial5 = &uart5;
|
||||
- };
|
||||
-
|
||||
chosen {
|
||||
/* 8250 auxiliary UART instead of pl011 */
|
||||
stdout-path = "serial1:115200n8";
|
||||
@@ -324,7 +319,8 @@ chosen {
|
||||
|
||||
aliases {
|
||||
serial0 = &uart1;
|
||||
- serial1 = &uart0;
|
||||
+ serial1 = &uart4;
|
||||
+ serial2 = &uart5;
|
||||
mmc0 = &emmc2;
|
||||
mmc1 = &mmcnr;
|
||||
mmc2 = &sdhost;
|
||||
--
|
||||
2.40.1
|
||||
|
@ -0,0 +1,79 @@
|
||||
From 51e62f1491c1fce95541008d29d154e4ae117a22 Mon Sep 17 00:00:00 2001
|
||||
Message-Id: <51e62f1491c1fce95541008d29d154e4ae117a22.1685609747.git.stefan@agner.ch>
|
||||
In-Reply-To: <f0292972b38d512fce48384ebbb72b2da46f03bd.1685609747.git.stefan@agner.ch>
|
||||
References: <f0292972b38d512fce48384ebbb72b2da46f03bd.1685609747.git.stefan@agner.ch>
|
||||
From: Stefan Agner <stefan@agner.ch>
|
||||
Date: Thu, 1 Jun 2023 10:22:12 +0200
|
||||
Subject: [PATCH] ARM: dts: bcm2711: yellow: Use mini-UART for Bluetooth by
|
||||
default
|
||||
|
||||
Use the mini UART for Bluetooth by default. This makes sure that the
|
||||
full UART is always available on J11.
|
||||
|
||||
Signed-off-by: Stefan Agner <stefan@agner.ch>
|
||||
---
|
||||
.../boot/dts/bcm2711-rpi-cm4-ha-yellow.dts | 23 ++++++++++++-------
|
||||
1 file changed, 15 insertions(+), 8 deletions(-)
|
||||
|
||||
diff --git a/arch/arm/boot/dts/bcm2711-rpi-cm4-ha-yellow.dts b/arch/arm/boot/dts/bcm2711-rpi-cm4-ha-yellow.dts
|
||||
index b8f0bc2df062..78e61e628d66 100644
|
||||
--- a/arch/arm/boot/dts/bcm2711-rpi-cm4-ha-yellow.dts
|
||||
+++ b/arch/arm/boot/dts/bcm2711-rpi-cm4-ha-yellow.dts
|
||||
@@ -318,7 +318,7 @@ chosen {
|
||||
};
|
||||
|
||||
aliases {
|
||||
- serial0 = &uart1;
|
||||
+ serial0 = &uart0;
|
||||
serial1 = &uart4;
|
||||
serial2 = &uart5;
|
||||
mmc0 = &emmc2;
|
||||
@@ -348,12 +348,14 @@ &mmcnr {
|
||||
};
|
||||
|
||||
&uart0 {
|
||||
- pinctrl-0 = <&uart0_pins &bt_pins>;
|
||||
+ pinctrl-0 = <&uart0_pins>;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&uart1 {
|
||||
- pinctrl-0 = <&uart1_pins>;
|
||||
+ pinctrl-names = "default";
|
||||
+ pinctrl-0 = <&uart1_pins &bt_pins &fake_bt_cts>;
|
||||
+ status = "okay";
|
||||
};
|
||||
|
||||
&spi0 {
|
||||
@@ -489,18 +491,23 @@ bt_pins: bt_pins {
|
||||
brcm,pull = <2>;
|
||||
};
|
||||
|
||||
- uart0_pins: uart0_pins {
|
||||
- brcm,pins = <32 33>;
|
||||
- brcm,function = <BCM2835_FSEL_ALT3>;
|
||||
- brcm,pull = <0 2>;
|
||||
+ fake_bt_cts: fake_bt_cts {
|
||||
+ brcm,pins = <31>;
|
||||
+ brcm,function = <1>; /* output */
|
||||
};
|
||||
|
||||
- uart1_pins: uart1_pins {
|
||||
+ uart0_pins: uart0_pins {
|
||||
brcm,pins;
|
||||
brcm,function;
|
||||
brcm,pull;
|
||||
};
|
||||
|
||||
+ uart1_pins: uart1_pins {
|
||||
+ brcm,pins = <32 33>;
|
||||
+ brcm,function = <2>; /* alt5=UART1 */
|
||||
+ brcm,pull = <0 2>;
|
||||
+ };
|
||||
+
|
||||
uart2_pins: uart2_pins {
|
||||
brcm,pins = <0 1>;
|
||||
brcm,function = <BCM2835_FSEL_ALT4>;
|
||||
--
|
||||
2.40.1
|
||||
|
@ -0,0 +1,4 @@
|
||||
|
||||
KERNEL=="ttyAMA0", SYMLINK+="serial0"
|
||||
|
||||
KERNEL=="ttyS0", SYMLINK+="serial1"
|
@ -1,4 +1 @@
|
||||
CONFIG_NVME_PCI=y
|
||||
CONFIG_CMD_NVME=y
|
||||
CONFIG_NVME=y
|
||||
CONFIG_CMD_USB_MASS_STORAGE=y
|
||||
|
@ -20,7 +20,7 @@ BR2_ROOTFS_POST_IMAGE_SCRIPT="$(BR2_EXTERNAL_HASSOS_PATH)/scripts/post-image.sh"
|
||||
BR2_ROOTFS_POST_SCRIPT_ARGS="$(BR2_EXTERNAL_HASSOS_PATH)/board/arm-uefi/generic-aarch64 $(BR2_EXTERNAL_HASSOS_PATH)/board/arm-uefi/generic-aarch64/hassos-hook.sh"
|
||||
BR2_LINUX_KERNEL=y
|
||||
BR2_LINUX_KERNEL_CUSTOM_VERSION=y
|
||||
BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="6.1.21"
|
||||
BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="6.1.45"
|
||||
BR2_LINUX_KERNEL_USE_ARCH_DEFAULT_CONFIG=y
|
||||
BR2_LINUX_KERNEL_CONFIG_FRAGMENT_FILES="$(BR2_EXTERNAL_HASSOS_PATH)/kernel/hassos.config $(BR2_EXTERNAL_HASSOS_PATH)/kernel/docker.config $(BR2_EXTERNAL_HASSOS_PATH)/kernel/device-support.config $(BR2_EXTERNAL_HASSOS_PATH)/board/arm-uefi/generic-aarch64/kernel.config"
|
||||
BR2_LINUX_KERNEL_LZ4=y
|
||||
@ -58,6 +58,7 @@ BR2_PACKAGE_LINUX_FIRMWARE_QUALCOMM_6174A_BT=y
|
||||
BR2_PACKAGE_LINUX_FIRMWARE_RALINK_RT73=y
|
||||
BR2_PACKAGE_LINUX_FIRMWARE_RALINK_RT2XX=y
|
||||
BR2_PACKAGE_LINUX_FIRMWARE_RTL_81XX=y
|
||||
BR2_PACKAGE_LINUX_FIRMWARE_RTL_815X=y
|
||||
BR2_PACKAGE_LINUX_FIRMWARE_BNX2=y
|
||||
BR2_PACKAGE_LINUX_FIRMWARE_BNX2X=y
|
||||
BR2_PACKAGE_LINUX_FIRMWARE_RTL_8169=y
|
||||
@ -65,10 +66,10 @@ BR2_PACKAGE_LINUX_FIRMWARE_USB_SERIAL_TI=y
|
||||
BR2_PACKAGE_GPTFDISK=y
|
||||
BR2_PACKAGE_GPTFDISK_SGDISK=y
|
||||
# BR2_PACKAGE_LVM2_STANDARD_INSTALL is not set
|
||||
BR2_PACKAGE_RNG_TOOLS=y
|
||||
BR2_PACKAGE_RTL8812AU_AIRCRACK_NG=y
|
||||
BR2_PACKAGE_USB_MODESWITCH_DATA=y
|
||||
BR2_PACKAGE_CA_CERTIFICATES=y
|
||||
BR2_PACKAGE_CIFS_UTILS=y
|
||||
BR2_PACKAGE_LIBCURL_CURL=y
|
||||
BR2_PACKAGE_LIBCGROUP=y
|
||||
BR2_PACKAGE_LIBCGROUP_TOOLS=y
|
||||
@ -86,6 +87,9 @@ BR2_PACKAGE_DROPBEAR=y
|
||||
# BR2_PACKAGE_IFUPDOWN_SCRIPTS is not set
|
||||
BR2_PACKAGE_NETWORK_MANAGER=y
|
||||
BR2_PACKAGE_NETWORK_MANAGER_CLI=y
|
||||
BR2_PACKAGE_NFS_UTILS=y
|
||||
# BR2_PACKAGE_NFS_UTILS_RPC_NFSD is not set
|
||||
BR2_PACKAGE_RPCBIND=y
|
||||
BR2_PACKAGE_IPTABLES_NFTABLES=y
|
||||
BR2_PACKAGE_IPTABLES_NFTABLES_DEFAULT=y
|
||||
BR2_PACKAGE_WIRELESS_REGDB=y
|
||||
|
@ -20,9 +20,9 @@ BR2_ROOTFS_POST_IMAGE_SCRIPT="$(BR2_EXTERNAL_HASSOS_PATH)/scripts/post-image.sh"
|
||||
BR2_ROOTFS_POST_SCRIPT_ARGS="$(BR2_EXTERNAL_HASSOS_PATH)/board/pc/generic-x86-64 $(BR2_EXTERNAL_HASSOS_PATH)/board/pc/generic-x86-64/hassos-hook.sh"
|
||||
BR2_LINUX_KERNEL=y
|
||||
BR2_LINUX_KERNEL_CUSTOM_VERSION=y
|
||||
BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="6.1.21"
|
||||
BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="6.1.45"
|
||||
BR2_LINUX_KERNEL_DEFCONFIG="x86_64"
|
||||
BR2_LINUX_KERNEL_CONFIG_FRAGMENT_FILES="$(BR2_EXTERNAL_HASSOS_PATH)/kernel/hassos.config $(BR2_EXTERNAL_HASSOS_PATH)/kernel/docker.config $(BR2_EXTERNAL_HASSOS_PATH)/kernel/device-support.config $(BR2_EXTERNAL_HASSOS_PATH)/board/pc/generic-x86-64/kernel.config"
|
||||
BR2_LINUX_KERNEL_CONFIG_FRAGMENT_FILES="$(BR2_EXTERNAL_HASSOS_PATH)/kernel/hassos.config $(BR2_EXTERNAL_HASSOS_PATH)/kernel/docker.config $(BR2_EXTERNAL_HASSOS_PATH)/kernel/device-support.config $(BR2_EXTERNAL_HASSOS_PATH)/kernel/device-support-pcie.config $(BR2_EXTERNAL_HASSOS_PATH)/board/pc/generic-x86-64/kernel.config"
|
||||
BR2_LINUX_KERNEL_LZ4=y
|
||||
BR2_LINUX_KERNEL_NEEDS_HOST_OPENSSL=y
|
||||
BR2_LINUX_KERNEL_NEEDS_HOST_LIBELF=y
|
||||
@ -60,17 +60,20 @@ BR2_PACKAGE_LINUX_FIRMWARE_QUALCOMM_6174A_BT=y
|
||||
BR2_PACKAGE_LINUX_FIRMWARE_RALINK_RT73=y
|
||||
BR2_PACKAGE_LINUX_FIRMWARE_RALINK_RT2XX=y
|
||||
BR2_PACKAGE_LINUX_FIRMWARE_RTL_81XX=y
|
||||
BR2_PACKAGE_LINUX_FIRMWARE_RTL_815X=y
|
||||
BR2_PACKAGE_LINUX_FIRMWARE_RTL_RTW88=y
|
||||
BR2_PACKAGE_LINUX_FIRMWARE_BNX2=y
|
||||
BR2_PACKAGE_LINUX_FIRMWARE_BNX2X=y
|
||||
BR2_PACKAGE_LINUX_FIRMWARE_BROADCOM_TIGON3=y
|
||||
BR2_PACKAGE_LINUX_FIRMWARE_RTL_8169=y
|
||||
BR2_PACKAGE_LINUX_FIRMWARE_USB_SERIAL_TI=y
|
||||
BR2_PACKAGE_GPTFDISK=y
|
||||
BR2_PACKAGE_GPTFDISK_SGDISK=y
|
||||
# BR2_PACKAGE_LVM2_STANDARD_INSTALL is not set
|
||||
BR2_PACKAGE_RNG_TOOLS=y
|
||||
BR2_PACKAGE_RTL8812AU_AIRCRACK_NG=y
|
||||
BR2_PACKAGE_USB_MODESWITCH_DATA=y
|
||||
BR2_PACKAGE_CA_CERTIFICATES=y
|
||||
BR2_PACKAGE_CIFS_UTILS=y
|
||||
BR2_PACKAGE_LIBCURL_CURL=y
|
||||
BR2_PACKAGE_LIBCGROUP=y
|
||||
BR2_PACKAGE_LIBCGROUP_TOOLS=y
|
||||
@ -88,6 +91,9 @@ BR2_PACKAGE_DROPBEAR=y
|
||||
# BR2_PACKAGE_IFUPDOWN_SCRIPTS is not set
|
||||
BR2_PACKAGE_NETWORK_MANAGER=y
|
||||
BR2_PACKAGE_NETWORK_MANAGER_CLI=y
|
||||
BR2_PACKAGE_NFS_UTILS=y
|
||||
# BR2_PACKAGE_NFS_UTILS_RPC_NFSD is not set
|
||||
BR2_PACKAGE_RPCBIND=y
|
||||
BR2_PACKAGE_IPTABLES_NFTABLES=y
|
||||
BR2_PACKAGE_IPTABLES_NFTABLES_DEFAULT=y
|
||||
BR2_PACKAGE_WIRELESS_REGDB=y
|
||||
|
148
buildroot-external/configs/green_defconfig
Executable file
148
buildroot-external/configs/green_defconfig
Executable file
@ -0,0 +1,148 @@
|
||||
BR2_aarch64=y
|
||||
BR2_DL_DIR="/cache/dl"
|
||||
BR2_CCACHE=y
|
||||
BR2_CCACHE_DIR="/cache/cc"
|
||||
BR2_OPTIMIZE_2=y
|
||||
BR2_GLOBAL_PATCH_DIR="$(BR2_EXTERNAL_HASSOS_PATH)/patches $(BR2_EXTERNAL_HASSOS_PATH)/board/nabucasa/green/patches"
|
||||
BR2_SSP_REGULAR=y
|
||||
BR2_TOOLCHAIN_BUILDROOT_GLIBC=y
|
||||
BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_6_1=y
|
||||
BR2_GCC_VERSION_11_X=y
|
||||
BR2_TOOLCHAIN_BUILDROOT_CXX=y
|
||||
BR2_GCC_ENABLE_LTO=y
|
||||
BR2_TARGET_GENERIC_HOSTNAME="homeassistant"
|
||||
BR2_TARGET_GENERIC_ISSUE="Welcome to Home Assistant"
|
||||
BR2_INIT_SYSTEMD=y
|
||||
# BR2_TARGET_GENERIC_REMOUNT_ROOTFS_RW is not set
|
||||
BR2_ROOTFS_OVERLAY="$(BR2_EXTERNAL_HASSOS_PATH)/rootfs-overlay"
|
||||
BR2_ROOTFS_POST_BUILD_SCRIPT="$(BR2_EXTERNAL_HASSOS_PATH)/scripts/post-build.sh"
|
||||
BR2_ROOTFS_POST_IMAGE_SCRIPT="$(BR2_EXTERNAL_HASSOS_PATH)/scripts/post-image.sh"
|
||||
BR2_ROOTFS_POST_SCRIPT_ARGS="$(BR2_EXTERNAL_HASSOS_PATH)/board/nabucasa/green $(BR2_EXTERNAL_HASSOS_PATH)/board/nabucasa/green/hassos-hook.sh"
|
||||
BR2_LINUX_KERNEL=y
|
||||
BR2_LINUX_KERNEL_CUSTOM_VERSION=y
|
||||
BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="6.1.45"
|
||||
BR2_LINUX_KERNEL_USE_CUSTOM_CONFIG=y
|
||||
BR2_LINUX_KERNEL_CUSTOM_CONFIG_FILE="$(BR2_EXTERNAL_HASSOS_PATH)/board/nabucasa/kernel-rockchip.config"
|
||||
BR2_LINUX_KERNEL_CONFIG_FRAGMENT_FILES="$(BR2_EXTERNAL_HASSOS_PATH)/kernel/hassos.config $(BR2_EXTERNAL_HASSOS_PATH)/kernel/docker.config $(BR2_EXTERNAL_HASSOS_PATH)/kernel/device-support.config $(BR2_EXTERNAL_HASSOS_PATH)/board/nabucasa/green/kernel.config"
|
||||
BR2_LINUX_KERNEL_LZ4=y
|
||||
BR2_LINUX_KERNEL_DTS_SUPPORT=y
|
||||
BR2_LINUX_KERNEL_INTREE_DTS_NAME="rockchip/rk3566-ha-green"
|
||||
BR2_LINUX_KERNEL_DTB_OVERLAY_SUPPORT=y
|
||||
BR2_LINUX_KERNEL_NEEDS_HOST_OPENSSL=y
|
||||
BR2_LINUX_KERNEL_NEEDS_HOST_LIBELF=y
|
||||
BR2_PACKAGE_BUSYBOX_CONFIG="$(BR2_EXTERNAL_HASSOS_PATH)/busybox.config"
|
||||
BR2_PACKAGE_BUSYBOX_INDIVIDUAL_BINARIES=y
|
||||
BR2_PACKAGE_JQ=y
|
||||
BR2_PACKAGE_DOSFSTOOLS=y
|
||||
BR2_PACKAGE_DOSFSTOOLS_FSCK_FAT=y
|
||||
BR2_PACKAGE_E2FSPROGS=y
|
||||
BR2_PACKAGE_E2FSPROGS_E2IMAGE=y
|
||||
BR2_PACKAGE_IPROUTE2=y
|
||||
BR2_PACKAGE_LINUX_FIRMWARE=y
|
||||
BR2_PACKAGE_LINUX_FIRMWARE_RTL_87XX_BT=y
|
||||
BR2_PACKAGE_LINUX_FIRMWARE_RTL_88XX_BT=y
|
||||
BR2_PACKAGE_LINUX_FIRMWARE_MEDIATEK_MT7601U=y
|
||||
BR2_PACKAGE_LINUX_FIRMWARE_RALINK_RT73=y
|
||||
BR2_PACKAGE_LINUX_FIRMWARE_RALINK_RT2XX=y
|
||||
BR2_PACKAGE_LINUX_FIRMWARE_RTL_81XX=y
|
||||
BR2_PACKAGE_LINUX_FIRMWARE_RTL_815X=y
|
||||
BR2_PACKAGE_LINUX_FIRMWARE_USB_SERIAL_TI=y
|
||||
BR2_PACKAGE_GPTFDISK=y
|
||||
BR2_PACKAGE_GPTFDISK_SGDISK=y
|
||||
# BR2_PACKAGE_LVM2_STANDARD_INSTALL is not set
|
||||
BR2_PACKAGE_RTL8812AU_AIRCRACK_NG=y
|
||||
BR2_PACKAGE_USB_MODESWITCH_DATA=y
|
||||
BR2_PACKAGE_CA_CERTIFICATES=y
|
||||
BR2_PACKAGE_CIFS_UTILS=y
|
||||
BR2_PACKAGE_LIBCURL_CURL=y
|
||||
BR2_PACKAGE_LIBDNET=y
|
||||
BR2_PACKAGE_LIBCGROUP=y
|
||||
BR2_PACKAGE_LIBCGROUP_TOOLS=y
|
||||
BR2_PACKAGE_LIBSECCOMP=y
|
||||
BR2_PACKAGE_BLUEZ5_UTILS=y
|
||||
BR2_PACKAGE_BLUEZ5_UTILS_CLIENT=y
|
||||
BR2_PACKAGE_BLUEZ5_UTILS_PLUGINS_AUDIO=y
|
||||
BR2_PACKAGE_BLUEZ5_UTILS_PLUGINS_HID=y
|
||||
BR2_PACKAGE_BLUEZ5_UTILS_PLUGINS_HOG=y
|
||||
BR2_PACKAGE_BLUEZ5_UTILS_TOOLS=y
|
||||
BR2_PACKAGE_BLUEZ5_UTILS_DEPRECATED=y
|
||||
BR2_PACKAGE_DBUS_BROKER=y
|
||||
BR2_PACKAGE_DHCP=y
|
||||
BR2_PACKAGE_DHCP_CLIENT=y
|
||||
BR2_PACKAGE_DROPBEAR=y
|
||||
# BR2_PACKAGE_IFUPDOWN_SCRIPTS is not set
|
||||
BR2_PACKAGE_NETWORK_MANAGER=y
|
||||
BR2_PACKAGE_NETWORK_MANAGER_CLI=y
|
||||
BR2_PACKAGE_NFS_UTILS=y
|
||||
# BR2_PACKAGE_NFS_UTILS_RPC_NFSD is not set
|
||||
BR2_PACKAGE_RPCBIND=y
|
||||
BR2_PACKAGE_IPTABLES_NFTABLES=y
|
||||
BR2_PACKAGE_IPTABLES_NFTABLES_DEFAULT=y
|
||||
BR2_PACKAGE_WIRELESS_REGDB=y
|
||||
BR2_PACKAGE_WPA_SUPPLICANT=y
|
||||
BR2_PACKAGE_WPA_SUPPLICANT_DBUS=y
|
||||
BR2_PACKAGE_WPA_SUPPLICANT_DBUS_INTROSPECTION=y
|
||||
BR2_PACKAGE_WPA_SUPPLICANT_WEXT=y
|
||||
BR2_PACKAGE_WPA_SUPPLICANT_NL80211=y
|
||||
BR2_PACKAGE_WPA_SUPPLICANT_AP_SUPPORT=y
|
||||
BR2_PACKAGE_APPARMOR=y
|
||||
BR2_PACKAGE_APPARMOR_PROFILES=y
|
||||
BR2_PACKAGE_TINI=y
|
||||
BR2_PACKAGE_DOCKER_CLI=y
|
||||
BR2_PACKAGE_DOCKER_ENGINE=y
|
||||
BR2_PACKAGE_PROCPS_NG=y
|
||||
BR2_PACKAGE_RAUC=y
|
||||
BR2_PACKAGE_RAUC_DBUS=y
|
||||
BR2_PACKAGE_RAUC_NETWORK=y
|
||||
BR2_PACKAGE_SYSTEMD_JOURNAL_REMOTE=y
|
||||
BR2_PACKAGE_SYSTEMD_COREDUMP=y
|
||||
# BR2_PACKAGE_SYSTEMD_HWDB is not set
|
||||
BR2_PACKAGE_SYSTEMD_LOGIND=y
|
||||
# BR2_PACKAGE_SYSTEMD_NETWORKD is not set
|
||||
BR2_PACKAGE_SYSTEMD_RANDOMSEED=y
|
||||
BR2_PACKAGE_UTIL_LINUX_LOGIN=y
|
||||
BR2_PACKAGE_UTIL_LINUX_NOLOGIN=y
|
||||
BR2_PACKAGE_UTIL_LINUX_PARTX=y
|
||||
BR2_PACKAGE_UTIL_LINUX_SULOGIN=y
|
||||
BR2_PACKAGE_UTIL_LINUX_ZRAMCTL=y
|
||||
BR2_TARGET_ROOTFS_SQUASHFS=y
|
||||
BR2_TARGET_ROOTFS_SQUASHFS4_LZ4=y
|
||||
# BR2_TARGET_ROOTFS_TAR is not set
|
||||
BR2_TARGET_UBOOT=y
|
||||
BR2_TARGET_UBOOT_BUILD_SYSTEM_KCONFIG=y
|
||||
BR2_TARGET_UBOOT_CUSTOM_GIT=y
|
||||
BR2_TARGET_UBOOT_CUSTOM_REPO_URL="https://github.com/u-boot/u-boot.git"
|
||||
BR2_TARGET_UBOOT_CUSTOM_REPO_VERSION="v2023.07.02"
|
||||
BR2_TARGET_UBOOT_BOARD_DEFCONFIG="green"
|
||||
BR2_TARGET_UBOOT_CONFIG_FRAGMENT_FILES="$(BR2_EXTERNAL_HASSOS_PATH)/bootloader/uboot.config $(BR2_EXTERNAL_HASSOS_PATH)/board/nabucasa/green/uboot.config"
|
||||
BR2_TARGET_UBOOT_FORMAT_CUSTOM=y
|
||||
BR2_TARGET_UBOOT_FORMAT_CUSTOM_NAME="idbloader.img u-boot.itb"
|
||||
BR2_TARGET_UBOOT_NEEDS_PYLIBFDT=y
|
||||
BR2_TARGET_UBOOT_NEEDS_PYELFTOOLS=y
|
||||
BR2_TARGET_UBOOT_NEEDS_ATF_BL31=y
|
||||
BR2_TARGET_UBOOT_NEEDS_ATF_BL31_ELF=y
|
||||
BR2_TARGET_UBOOT_NEEDS_TPL=y
|
||||
BR2_PACKAGE_HOST_DOSFSTOOLS=y
|
||||
BR2_PACKAGE_HOST_E2FSPROGS=y
|
||||
BR2_PACKAGE_HOST_GPTFDISK=y
|
||||
BR2_PACKAGE_HOST_MTOOLS=y
|
||||
BR2_PACKAGE_HOST_RAUC=y
|
||||
BR2_PACKAGE_HOST_UBOOT_TOOLS=y
|
||||
BR2_PACKAGE_HOST_UBOOT_TOOLS_BOOT_SCRIPT=y
|
||||
BR2_PACKAGE_HOST_UBOOT_TOOLS_BOOT_SCRIPT_SOURCE="$(BR2_EXTERNAL_HASSOS_PATH)/board/nabucasa/green/uboot-boot.ush"
|
||||
BR2_PACKAGE_ROCKCHIP_BLOBS=y
|
||||
BR2_PACKAGE_ROCKCHIP_BLOBS_VERSION="b4558da0860ca48bf1a571dd33ccba580b9abe23"
|
||||
BR2_PACKAGE_ROCKCHIP_BLOBS_ATF="bin/rk35/rk3568_bl31_v1.43.elf"
|
||||
BR2_PACKAGE_ROCKCHIP_BLOBS_TPL="bin/rk35/rk3566_ddr_1056MHz_v1.18.bin"
|
||||
BR2_PACKAGE_GASKET=y
|
||||
BR2_PACKAGE_HASSIO=y
|
||||
BR2_PACKAGE_HASSIO_ARCH="aarch64"
|
||||
BR2_PACKAGE_HASSIO_MACHINE="green"
|
||||
BR2_PACKAGE_OS_AGENT=y
|
||||
BR2_PACKAGE_OS_AGENT_BOARD="Green"
|
||||
BR2_PACKAGE_RPI_RF_MOD=y
|
||||
BR2_PACKAGE_RTL88X2BU=y
|
||||
BR2_PACKAGE_RTL8821CU=y
|
||||
BR2_PACKAGE_HOST_TEMPIO=y
|
||||
BR2_PACKAGE_UDISKS2=y
|
||||
BR2_PACKAGE_V4L2LOOPBACK=y
|
@ -20,7 +20,7 @@ BR2_ROOTFS_POST_IMAGE_SCRIPT="$(BR2_EXTERNAL_HASSOS_PATH)/scripts/post-image.sh"
|
||||
BR2_ROOTFS_POST_SCRIPT_ARGS="$(BR2_EXTERNAL_HASSOS_PATH)/board/khadas/vim3 $(BR2_EXTERNAL_HASSOS_PATH)/board/khadas/vim3/hassos-hook.sh"
|
||||
BR2_LINUX_KERNEL=y
|
||||
BR2_LINUX_KERNEL_CUSTOM_VERSION=y
|
||||
BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="6.1.21"
|
||||
BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="6.1.45"
|
||||
BR2_LINUX_KERNEL_USE_CUSTOM_CONFIG=y
|
||||
BR2_LINUX_KERNEL_CUSTOM_CONFIG_FILE="$(BR2_EXTERNAL_HASSOS_PATH)/board/khadas/kernel-vim.config"
|
||||
BR2_LINUX_KERNEL_CONFIG_FRAGMENT_FILES="$(BR2_EXTERNAL_HASSOS_PATH)/kernel/hassos.config $(BR2_EXTERNAL_HASSOS_PATH)/kernel/docker.config $(BR2_EXTERNAL_HASSOS_PATH)/kernel/device-support.config"
|
||||
@ -45,14 +45,15 @@ BR2_PACKAGE_LINUX_FIRMWARE_MEDIATEK_MT7601U=y
|
||||
BR2_PACKAGE_LINUX_FIRMWARE_RALINK_RT73=y
|
||||
BR2_PACKAGE_LINUX_FIRMWARE_RALINK_RT2XX=y
|
||||
BR2_PACKAGE_LINUX_FIRMWARE_RTL_81XX=y
|
||||
BR2_PACKAGE_LINUX_FIRMWARE_RTL_815X=y
|
||||
BR2_PACKAGE_LINUX_FIRMWARE_USB_SERIAL_TI=y
|
||||
BR2_PACKAGE_GPTFDISK=y
|
||||
BR2_PACKAGE_GPTFDISK_SGDISK=y
|
||||
# BR2_PACKAGE_LVM2_STANDARD_INSTALL is not set
|
||||
BR2_PACKAGE_RNG_TOOLS=y
|
||||
BR2_PACKAGE_RTL8812AU_AIRCRACK_NG=y
|
||||
BR2_PACKAGE_USB_MODESWITCH_DATA=y
|
||||
BR2_PACKAGE_CA_CERTIFICATES=y
|
||||
BR2_PACKAGE_CIFS_UTILS=y
|
||||
BR2_PACKAGE_LIBCURL_CURL=y
|
||||
BR2_PACKAGE_LIBDNET=y
|
||||
BR2_PACKAGE_LIBCGROUP=y
|
||||
@ -72,6 +73,9 @@ BR2_PACKAGE_DROPBEAR=y
|
||||
# BR2_PACKAGE_IFUPDOWN_SCRIPTS is not set
|
||||
BR2_PACKAGE_NETWORK_MANAGER=y
|
||||
BR2_PACKAGE_NETWORK_MANAGER_CLI=y
|
||||
BR2_PACKAGE_NFS_UTILS=y
|
||||
# BR2_PACKAGE_NFS_UTILS_RPC_NFSD is not set
|
||||
BR2_PACKAGE_RPCBIND=y
|
||||
BR2_PACKAGE_IPTABLES_NFTABLES=y
|
||||
BR2_PACKAGE_IPTABLES_NFTABLES_DEFAULT=y
|
||||
BR2_PACKAGE_WIRELESS_REGDB=y
|
||||
@ -125,6 +129,7 @@ BR2_PACKAGE_HASSIO_MACHINE="khadas-vim3"
|
||||
BR2_PACKAGE_KHADAS_BOOT=y
|
||||
BR2_PACKAGE_OS_AGENT=y
|
||||
BR2_PACKAGE_OS_AGENT_BOARD="KhadasVim3"
|
||||
BR2_PACKAGE_RPI_RF_MOD=y
|
||||
BR2_PACKAGE_RTL88X2BU=y
|
||||
BR2_PACKAGE_RTL8821CU=y
|
||||
BR2_PACKAGE_HOST_TEMPIO=y
|
||||
|
@ -20,7 +20,7 @@ BR2_ROOTFS_POST_IMAGE_SCRIPT="$(BR2_EXTERNAL_HASSOS_PATH)/scripts/post-image.sh"
|
||||
BR2_ROOTFS_POST_SCRIPT_ARGS="$(BR2_EXTERNAL_HASSOS_PATH)/board/hardkernel/odroid-c2 $(BR2_EXTERNAL_HASSOS_PATH)/board/hardkernel/odroid-c2/hassos-hook.sh"
|
||||
BR2_LINUX_KERNEL=y
|
||||
BR2_LINUX_KERNEL_CUSTOM_VERSION=y
|
||||
BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="6.1.21"
|
||||
BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="6.1.45"
|
||||
BR2_LINUX_KERNEL_USE_CUSTOM_CONFIG=y
|
||||
BR2_LINUX_KERNEL_CUSTOM_CONFIG_FILE="$(BR2_EXTERNAL_HASSOS_PATH)/board/hardkernel/kernel-amlogic.config"
|
||||
BR2_LINUX_KERNEL_CONFIG_FRAGMENT_FILES="$(BR2_EXTERNAL_HASSOS_PATH)/kernel/hassos.config $(BR2_EXTERNAL_HASSOS_PATH)/kernel/docker.config $(BR2_EXTERNAL_HASSOS_PATH)/kernel/device-support.config"
|
||||
@ -45,14 +45,15 @@ BR2_PACKAGE_LINUX_FIRMWARE_MEDIATEK_MT7601U=y
|
||||
BR2_PACKAGE_LINUX_FIRMWARE_RALINK_RT73=y
|
||||
BR2_PACKAGE_LINUX_FIRMWARE_RALINK_RT2XX=y
|
||||
BR2_PACKAGE_LINUX_FIRMWARE_RTL_81XX=y
|
||||
BR2_PACKAGE_LINUX_FIRMWARE_RTL_815X=y
|
||||
BR2_PACKAGE_LINUX_FIRMWARE_USB_SERIAL_TI=y
|
||||
BR2_PACKAGE_GPTFDISK=y
|
||||
BR2_PACKAGE_GPTFDISK_SGDISK=y
|
||||
# BR2_PACKAGE_LVM2_STANDARD_INSTALL is not set
|
||||
BR2_PACKAGE_RNG_TOOLS=y
|
||||
BR2_PACKAGE_RTL8812AU_AIRCRACK_NG=y
|
||||
BR2_PACKAGE_USB_MODESWITCH_DATA=y
|
||||
BR2_PACKAGE_CA_CERTIFICATES=y
|
||||
BR2_PACKAGE_CIFS_UTILS=y
|
||||
BR2_PACKAGE_LIBCURL_CURL=y
|
||||
BR2_PACKAGE_LIBDNET=y
|
||||
BR2_PACKAGE_LIBCGROUP=y
|
||||
@ -72,6 +73,9 @@ BR2_PACKAGE_DROPBEAR=y
|
||||
# BR2_PACKAGE_IFUPDOWN_SCRIPTS is not set
|
||||
BR2_PACKAGE_NETWORK_MANAGER=y
|
||||
BR2_PACKAGE_NETWORK_MANAGER_CLI=y
|
||||
BR2_PACKAGE_NFS_UTILS=y
|
||||
# BR2_PACKAGE_NFS_UTILS_RPC_NFSD is not set
|
||||
BR2_PACKAGE_RPCBIND=y
|
||||
BR2_PACKAGE_IPTABLES_NFTABLES=y
|
||||
BR2_PACKAGE_IPTABLES_NFTABLES_DEFAULT=y
|
||||
BR2_PACKAGE_WIRELESS_REGDB=y
|
||||
|
@ -20,7 +20,7 @@ BR2_ROOTFS_POST_IMAGE_SCRIPT="$(BR2_EXTERNAL_HASSOS_PATH)/scripts/post-image.sh"
|
||||
BR2_ROOTFS_POST_SCRIPT_ARGS="$(BR2_EXTERNAL_HASSOS_PATH)/board/hardkernel/odroid-c4 $(BR2_EXTERNAL_HASSOS_PATH)/board/hardkernel/odroid-c4/hassos-hook.sh"
|
||||
BR2_LINUX_KERNEL=y
|
||||
BR2_LINUX_KERNEL_CUSTOM_VERSION=y
|
||||
BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="6.1.21"
|
||||
BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="6.1.45"
|
||||
BR2_LINUX_KERNEL_USE_CUSTOM_CONFIG=y
|
||||
BR2_LINUX_KERNEL_CUSTOM_CONFIG_FILE="$(BR2_EXTERNAL_HASSOS_PATH)/board/hardkernel/kernel-amlogic.config"
|
||||
BR2_LINUX_KERNEL_CONFIG_FRAGMENT_FILES="$(BR2_EXTERNAL_HASSOS_PATH)/kernel/hassos.config $(BR2_EXTERNAL_HASSOS_PATH)/kernel/docker.config $(BR2_EXTERNAL_HASSOS_PATH)/kernel/device-support.config"
|
||||
@ -43,14 +43,15 @@ BR2_PACKAGE_LINUX_FIRMWARE_MEDIATEK_MT7601U=y
|
||||
BR2_PACKAGE_LINUX_FIRMWARE_RALINK_RT73=y
|
||||
BR2_PACKAGE_LINUX_FIRMWARE_RALINK_RT2XX=y
|
||||
BR2_PACKAGE_LINUX_FIRMWARE_RTL_81XX=y
|
||||
BR2_PACKAGE_LINUX_FIRMWARE_RTL_815X=y
|
||||
BR2_PACKAGE_LINUX_FIRMWARE_USB_SERIAL_TI=y
|
||||
BR2_PACKAGE_GPTFDISK=y
|
||||
BR2_PACKAGE_GPTFDISK_SGDISK=y
|
||||
# BR2_PACKAGE_LVM2_STANDARD_INSTALL is not set
|
||||
BR2_PACKAGE_RNG_TOOLS=y
|
||||
BR2_PACKAGE_RTL8812AU_AIRCRACK_NG=y
|
||||
BR2_PACKAGE_USB_MODESWITCH_DATA=y
|
||||
BR2_PACKAGE_CA_CERTIFICATES=y
|
||||
BR2_PACKAGE_CIFS_UTILS=y
|
||||
BR2_PACKAGE_LIBCURL_CURL=y
|
||||
BR2_PACKAGE_LIBDNET=y
|
||||
BR2_PACKAGE_LIBCGROUP=y
|
||||
@ -70,6 +71,9 @@ BR2_PACKAGE_DROPBEAR=y
|
||||
# BR2_PACKAGE_IFUPDOWN_SCRIPTS is not set
|
||||
BR2_PACKAGE_NETWORK_MANAGER=y
|
||||
BR2_PACKAGE_NETWORK_MANAGER_CLI=y
|
||||
BR2_PACKAGE_NFS_UTILS=y
|
||||
# BR2_PACKAGE_NFS_UTILS_RPC_NFSD is not set
|
||||
BR2_PACKAGE_RPCBIND=y
|
||||
BR2_PACKAGE_IPTABLES_NFTABLES=y
|
||||
BR2_PACKAGE_IPTABLES_NFTABLES_DEFAULT=y
|
||||
BR2_PACKAGE_WIRELESS_REGDB=y
|
||||
|
@ -20,7 +20,7 @@ BR2_ROOTFS_POST_IMAGE_SCRIPT="$(BR2_EXTERNAL_HASSOS_PATH)/scripts/post-image.sh"
|
||||
BR2_ROOTFS_POST_SCRIPT_ARGS="$(BR2_EXTERNAL_HASSOS_PATH)/board/hardkernel/odroid-m1 $(BR2_EXTERNAL_HASSOS_PATH)/board/hardkernel/odroid-m1/hassos-hook.sh"
|
||||
BR2_LINUX_KERNEL=y
|
||||
BR2_LINUX_KERNEL_CUSTOM_VERSION=y
|
||||
BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="6.1.21"
|
||||
BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="6.1.45"
|
||||
BR2_LINUX_KERNEL_USE_CUSTOM_CONFIG=y
|
||||
BR2_LINUX_KERNEL_CUSTOM_CONFIG_FILE="$(BR2_EXTERNAL_HASSOS_PATH)/board/hardkernel/kernel-rockchip.config"
|
||||
BR2_LINUX_KERNEL_CONFIG_FRAGMENT_FILES="$(BR2_EXTERNAL_HASSOS_PATH)/kernel/hassos.config $(BR2_EXTERNAL_HASSOS_PATH)/kernel/docker.config $(BR2_EXTERNAL_HASSOS_PATH)/kernel/device-support.config $(BR2_EXTERNAL_HASSOS_PATH)/board/hardkernel/odroid-m1/kernel.config"
|
||||
@ -45,14 +45,15 @@ BR2_PACKAGE_LINUX_FIRMWARE_MEDIATEK_MT7601U=y
|
||||
BR2_PACKAGE_LINUX_FIRMWARE_RALINK_RT73=y
|
||||
BR2_PACKAGE_LINUX_FIRMWARE_RALINK_RT2XX=y
|
||||
BR2_PACKAGE_LINUX_FIRMWARE_RTL_81XX=y
|
||||
BR2_PACKAGE_LINUX_FIRMWARE_RTL_815X=y
|
||||
BR2_PACKAGE_LINUX_FIRMWARE_USB_SERIAL_TI=y
|
||||
BR2_PACKAGE_GPTFDISK=y
|
||||
BR2_PACKAGE_GPTFDISK_SGDISK=y
|
||||
# BR2_PACKAGE_LVM2_STANDARD_INSTALL is not set
|
||||
BR2_PACKAGE_RNG_TOOLS=y
|
||||
BR2_PACKAGE_RTL8812AU_AIRCRACK_NG=y
|
||||
BR2_PACKAGE_USB_MODESWITCH_DATA=y
|
||||
BR2_PACKAGE_CA_CERTIFICATES=y
|
||||
BR2_PACKAGE_CIFS_UTILS=y
|
||||
BR2_PACKAGE_LIBCURL_CURL=y
|
||||
BR2_PACKAGE_LIBDNET=y
|
||||
BR2_PACKAGE_LIBCGROUP=y
|
||||
@ -72,6 +73,9 @@ BR2_PACKAGE_DROPBEAR=y
|
||||
# BR2_PACKAGE_IFUPDOWN_SCRIPTS is not set
|
||||
BR2_PACKAGE_NETWORK_MANAGER=y
|
||||
BR2_PACKAGE_NETWORK_MANAGER_CLI=y
|
||||
BR2_PACKAGE_NFS_UTILS=y
|
||||
# BR2_PACKAGE_NFS_UTILS_RPC_NFSD is not set
|
||||
BR2_PACKAGE_RPCBIND=y
|
||||
BR2_PACKAGE_IPTABLES_NFTABLES=y
|
||||
BR2_PACKAGE_IPTABLES_NFTABLES_DEFAULT=y
|
||||
BR2_PACKAGE_WIRELESS_REGDB=y
|
||||
@ -108,7 +112,7 @@ BR2_TARGET_UBOOT=y
|
||||
BR2_TARGET_UBOOT_BUILD_SYSTEM_KCONFIG=y
|
||||
BR2_TARGET_UBOOT_CUSTOM_GIT=y
|
||||
BR2_TARGET_UBOOT_CUSTOM_REPO_URL="https://github.com/u-boot/u-boot.git"
|
||||
BR2_TARGET_UBOOT_CUSTOM_REPO_VERSION="v2023.04-rc4"
|
||||
BR2_TARGET_UBOOT_CUSTOM_REPO_VERSION="v2023.04"
|
||||
BR2_TARGET_UBOOT_BOARD_DEFCONFIG="odroid-m1"
|
||||
BR2_TARGET_UBOOT_CONFIG_FRAGMENT_FILES="$(BR2_EXTERNAL_HASSOS_PATH)/bootloader/uboot.config"
|
||||
BR2_TARGET_UBOOT_FORMAT_CUSTOM=y
|
||||
@ -127,14 +131,16 @@ BR2_PACKAGE_HOST_UBOOT_TOOLS=y
|
||||
BR2_PACKAGE_HOST_UBOOT_TOOLS_BOOT_SCRIPT=y
|
||||
BR2_PACKAGE_HOST_UBOOT_TOOLS_BOOT_SCRIPT_SOURCE="$(BR2_EXTERNAL_HASSOS_PATH)/board/hardkernel/odroid-m1/uboot-boot.ush"
|
||||
BR2_PACKAGE_ROCKCHIP_BLOBS=y
|
||||
BR2_PACKAGE_ROCKCHIP_BLOBS_VERSION="b2dec11618b644d7fc8ac0eb7694a245667f5981"
|
||||
BR2_PACKAGE_ROCKCHIP_BLOBS_VERSION="6186debcac95553f6b311cee10669e12c9c9963d"
|
||||
BR2_PACKAGE_ROCKCHIP_BLOBS_ATF="bin/rk35/rk3568_bl31_v1.28.elf"
|
||||
BR2_PACKAGE_ROCKCHIP_BLOBS_TPL="bin/rk35/rk3568_ddr_1056MHz_v1.09.bin"
|
||||
BR2_PACKAGE_GASKET=y
|
||||
BR2_PACKAGE_HASSIO=y
|
||||
BR2_PACKAGE_HASSIO_ARCH="aarch64"
|
||||
BR2_PACKAGE_HASSIO_MACHINE="odroid-n2"
|
||||
BR2_PACKAGE_HASSIO_MACHINE="odroid-m1"
|
||||
BR2_PACKAGE_OS_AGENT=y
|
||||
BR2_PACKAGE_OS_AGENT_BOARD="OdroidN2"
|
||||
BR2_PACKAGE_OS_AGENT_BOARD="OdroidM1"
|
||||
BR2_PACKAGE_RPI_RF_MOD=y
|
||||
BR2_PACKAGE_RTL88X2BU=y
|
||||
BR2_PACKAGE_RTL8821CU=y
|
||||
BR2_PACKAGE_HOST_TEMPIO=y
|
||||
|
@ -20,7 +20,7 @@ BR2_ROOTFS_POST_IMAGE_SCRIPT="$(BR2_EXTERNAL_HASSOS_PATH)/scripts/post-image.sh"
|
||||
BR2_ROOTFS_POST_SCRIPT_ARGS="$(BR2_EXTERNAL_HASSOS_PATH)/board/hardkernel/odroid-n2 $(BR2_EXTERNAL_HASSOS_PATH)/board/hardkernel/odroid-n2/hassos-hook.sh"
|
||||
BR2_LINUX_KERNEL=y
|
||||
BR2_LINUX_KERNEL_CUSTOM_VERSION=y
|
||||
BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="6.1.21"
|
||||
BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="6.1.45"
|
||||
BR2_LINUX_KERNEL_USE_CUSTOM_CONFIG=y
|
||||
BR2_LINUX_KERNEL_CUSTOM_CONFIG_FILE="$(BR2_EXTERNAL_HASSOS_PATH)/board/hardkernel/kernel-amlogic.config"
|
||||
BR2_LINUX_KERNEL_CONFIG_FRAGMENT_FILES="$(BR2_EXTERNAL_HASSOS_PATH)/kernel/hassos.config $(BR2_EXTERNAL_HASSOS_PATH)/kernel/docker.config $(BR2_EXTERNAL_HASSOS_PATH)/kernel/device-support.config $(BR2_EXTERNAL_HASSOS_PATH)/board/hardkernel/odroid-n2/kernel.config"
|
||||
@ -45,14 +45,15 @@ BR2_PACKAGE_LINUX_FIRMWARE_MEDIATEK_MT7601U=y
|
||||
BR2_PACKAGE_LINUX_FIRMWARE_RALINK_RT73=y
|
||||
BR2_PACKAGE_LINUX_FIRMWARE_RALINK_RT2XX=y
|
||||
BR2_PACKAGE_LINUX_FIRMWARE_RTL_81XX=y
|
||||
BR2_PACKAGE_LINUX_FIRMWARE_RTL_815X=y
|
||||
BR2_PACKAGE_LINUX_FIRMWARE_USB_SERIAL_TI=y
|
||||
BR2_PACKAGE_GPTFDISK=y
|
||||
BR2_PACKAGE_GPTFDISK_SGDISK=y
|
||||
# BR2_PACKAGE_LVM2_STANDARD_INSTALL is not set
|
||||
BR2_PACKAGE_RNG_TOOLS=y
|
||||
BR2_PACKAGE_RTL8812AU_AIRCRACK_NG=y
|
||||
BR2_PACKAGE_USB_MODESWITCH_DATA=y
|
||||
BR2_PACKAGE_CA_CERTIFICATES=y
|
||||
BR2_PACKAGE_CIFS_UTILS=y
|
||||
BR2_PACKAGE_LIBCURL_CURL=y
|
||||
BR2_PACKAGE_LIBDNET=y
|
||||
BR2_PACKAGE_LIBCGROUP=y
|
||||
@ -72,6 +73,9 @@ BR2_PACKAGE_DROPBEAR=y
|
||||
# BR2_PACKAGE_IFUPDOWN_SCRIPTS is not set
|
||||
BR2_PACKAGE_NETWORK_MANAGER=y
|
||||
BR2_PACKAGE_NETWORK_MANAGER_CLI=y
|
||||
BR2_PACKAGE_NFS_UTILS=y
|
||||
# BR2_PACKAGE_NFS_UTILS_RPC_NFSD is not set
|
||||
BR2_PACKAGE_RPCBIND=y
|
||||
BR2_PACKAGE_IPTABLES_NFTABLES=y
|
||||
BR2_PACKAGE_IPTABLES_NFTABLES_DEFAULT=y
|
||||
BR2_PACKAGE_WIRELESS_REGDB=y
|
||||
|
@ -21,7 +21,7 @@ BR2_ROOTFS_POST_IMAGE_SCRIPT="$(BR2_EXTERNAL_HASSOS_PATH)/scripts/post-image.sh"
|
||||
BR2_ROOTFS_POST_SCRIPT_ARGS="$(BR2_EXTERNAL_HASSOS_PATH)/board/hardkernel/odroid-xu4 $(BR2_EXTERNAL_HASSOS_PATH)/board/hardkernel/odroid-xu4/hassos-hook.sh"
|
||||
BR2_LINUX_KERNEL=y
|
||||
BR2_LINUX_KERNEL_CUSTOM_VERSION=y
|
||||
BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="6.1.21"
|
||||
BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="6.1.45"
|
||||
BR2_LINUX_KERNEL_DEFCONFIG="exynos"
|
||||
BR2_LINUX_KERNEL_CONFIG_FRAGMENT_FILES="$(BR2_EXTERNAL_HASSOS_PATH)/kernel/hassos.config $(BR2_EXTERNAL_HASSOS_PATH)/kernel/docker.config $(BR2_EXTERNAL_HASSOS_PATH)/kernel/device-support.config"
|
||||
BR2_LINUX_KERNEL_LZ4=y
|
||||
@ -45,14 +45,15 @@ BR2_PACKAGE_LINUX_FIRMWARE_MEDIATEK_MT7601U=y
|
||||
BR2_PACKAGE_LINUX_FIRMWARE_RALINK_RT73=y
|
||||
BR2_PACKAGE_LINUX_FIRMWARE_RALINK_RT2XX=y
|
||||
BR2_PACKAGE_LINUX_FIRMWARE_RTL_81XX=y
|
||||
BR2_PACKAGE_LINUX_FIRMWARE_RTL_815X=y
|
||||
BR2_PACKAGE_LINUX_FIRMWARE_USB_SERIAL_TI=y
|
||||
BR2_PACKAGE_GPTFDISK=y
|
||||
BR2_PACKAGE_GPTFDISK_SGDISK=y
|
||||
# BR2_PACKAGE_LVM2_STANDARD_INSTALL is not set
|
||||
BR2_PACKAGE_RNG_TOOLS=y
|
||||
BR2_PACKAGE_RTL8812AU_AIRCRACK_NG=y
|
||||
BR2_PACKAGE_USB_MODESWITCH_DATA=y
|
||||
BR2_PACKAGE_CA_CERTIFICATES=y
|
||||
BR2_PACKAGE_CIFS_UTILS=y
|
||||
BR2_PACKAGE_LIBCURL_CURL=y
|
||||
BR2_PACKAGE_LIBDNET=y
|
||||
BR2_PACKAGE_LIBCGROUP=y
|
||||
@ -72,6 +73,9 @@ BR2_PACKAGE_DROPBEAR=y
|
||||
# BR2_PACKAGE_IFUPDOWN_SCRIPTS is not set
|
||||
BR2_PACKAGE_NETWORK_MANAGER=y
|
||||
BR2_PACKAGE_NETWORK_MANAGER_CLI=y
|
||||
BR2_PACKAGE_NFS_UTILS=y
|
||||
# BR2_PACKAGE_NFS_UTILS_RPC_NFSD is not set
|
||||
BR2_PACKAGE_RPCBIND=y
|
||||
BR2_PACKAGE_IPTABLES_NFTABLES=y
|
||||
BR2_PACKAGE_IPTABLES_NFTABLES_DEFAULT=y
|
||||
BR2_PACKAGE_WIRELESS_REGDB=y
|
||||
|
@ -20,9 +20,9 @@ BR2_ROOTFS_POST_IMAGE_SCRIPT="$(BR2_EXTERNAL_HASSOS_PATH)/scripts/post-image.sh"
|
||||
BR2_ROOTFS_POST_SCRIPT_ARGS="$(BR2_EXTERNAL_HASSOS_PATH)/board/pc/ova $(BR2_EXTERNAL_HASSOS_PATH)/board/pc/ova/hassos-hook.sh"
|
||||
BR2_LINUX_KERNEL=y
|
||||
BR2_LINUX_KERNEL_CUSTOM_VERSION=y
|
||||
BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="6.1.21"
|
||||
BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="6.1.45"
|
||||
BR2_LINUX_KERNEL_DEFCONFIG="x86_64"
|
||||
BR2_LINUX_KERNEL_CONFIG_FRAGMENT_FILES="$(BR2_EXTERNAL_HASSOS_PATH)/kernel/hassos.config $(BR2_EXTERNAL_HASSOS_PATH)/kernel/docker.config $(BR2_EXTERNAL_HASSOS_PATH)/kernel/device-support.config $(BR2_EXTERNAL_HASSOS_PATH)/board/pc/ova/kernel.config"
|
||||
BR2_LINUX_KERNEL_CONFIG_FRAGMENT_FILES="$(BR2_EXTERNAL_HASSOS_PATH)/kernel/hassos.config $(BR2_EXTERNAL_HASSOS_PATH)/kernel/docker.config $(BR2_EXTERNAL_HASSOS_PATH)/kernel/device-support.config $(BR2_EXTERNAL_HASSOS_PATH)/kernel/device-support-pcie.config $(BR2_EXTERNAL_HASSOS_PATH)/board/pc/ova/kernel.config"
|
||||
BR2_LINUX_KERNEL_LZ4=y
|
||||
BR2_LINUX_KERNEL_NEEDS_HOST_OPENSSL=y
|
||||
BR2_LINUX_KERNEL_NEEDS_HOST_LIBELF=y
|
||||
@ -58,6 +58,7 @@ BR2_PACKAGE_LINUX_FIRMWARE_QUALCOMM_6174A_BT=y
|
||||
BR2_PACKAGE_LINUX_FIRMWARE_RALINK_RT73=y
|
||||
BR2_PACKAGE_LINUX_FIRMWARE_RALINK_RT2XX=y
|
||||
BR2_PACKAGE_LINUX_FIRMWARE_RTL_81XX=y
|
||||
BR2_PACKAGE_LINUX_FIRMWARE_RTL_815X=y
|
||||
BR2_PACKAGE_LINUX_FIRMWARE_BNX2=y
|
||||
BR2_PACKAGE_LINUX_FIRMWARE_BNX2X=y
|
||||
BR2_PACKAGE_LINUX_FIRMWARE_RTL_8169=y
|
||||
@ -69,10 +70,10 @@ BR2_PACKAGE_LINUX_TOOLS_HV_VSS_DAEMON=y
|
||||
BR2_PACKAGE_GPTFDISK=y
|
||||
BR2_PACKAGE_GPTFDISK_SGDISK=y
|
||||
# BR2_PACKAGE_LVM2_STANDARD_INSTALL is not set
|
||||
BR2_PACKAGE_RNG_TOOLS=y
|
||||
BR2_PACKAGE_RTL8812AU_AIRCRACK_NG=y
|
||||
BR2_PACKAGE_USB_MODESWITCH_DATA=y
|
||||
BR2_PACKAGE_CA_CERTIFICATES=y
|
||||
BR2_PACKAGE_CIFS_UTILS=y
|
||||
BR2_PACKAGE_LIBCURL_CURL=y
|
||||
BR2_PACKAGE_LIBCGROUP=y
|
||||
BR2_PACKAGE_LIBCGROUP_TOOLS=y
|
||||
@ -90,6 +91,9 @@ BR2_PACKAGE_DROPBEAR=y
|
||||
# BR2_PACKAGE_IFUPDOWN_SCRIPTS is not set
|
||||
BR2_PACKAGE_NETWORK_MANAGER=y
|
||||
BR2_PACKAGE_NETWORK_MANAGER_CLI=y
|
||||
BR2_PACKAGE_NFS_UTILS=y
|
||||
# BR2_PACKAGE_NFS_UTILS_RPC_NFSD is not set
|
||||
BR2_PACKAGE_RPCBIND=y
|
||||
BR2_PACKAGE_IPTABLES_NFTABLES=y
|
||||
BR2_PACKAGE_IPTABLES_NFTABLES_DEFAULT=y
|
||||
BR2_PACKAGE_WIRELESS_REGDB=y
|
||||
|
@ -22,7 +22,7 @@ BR2_ROOTFS_POST_IMAGE_SCRIPT="$(BR2_EXTERNAL_HASSOS_PATH)/scripts/post-image.sh"
|
||||
BR2_ROOTFS_POST_SCRIPT_ARGS="$(BR2_EXTERNAL_HASSOS_PATH)/board/raspberrypi/rpi2 $(BR2_EXTERNAL_HASSOS_PATH)/board/raspberrypi/hassos-hook.sh"
|
||||
BR2_LINUX_KERNEL=y
|
||||
BR2_LINUX_KERNEL_CUSTOM_TARBALL=y
|
||||
BR2_LINUX_KERNEL_CUSTOM_TARBALL_LOCATION="$(call github,raspberrypi,linux,e3376fb94fda798d2a322e9c70789286132a1a9f)/linux-e9b8fd92399bd707bde31e3464472c1b06f5e2a0.tar.gz"
|
||||
BR2_LINUX_KERNEL_CUSTOM_TARBALL_LOCATION="https://github.com/raspberrypi/linux/archive/1.20230405.tar.gz"
|
||||
BR2_LINUX_KERNEL_DEFCONFIG="bcm2709"
|
||||
BR2_LINUX_KERNEL_CONFIG_FRAGMENT_FILES="$(BR2_EXTERNAL_HASSOS_PATH)/kernel/hassos.config $(BR2_EXTERNAL_HASSOS_PATH)/kernel/docker.config $(BR2_EXTERNAL_HASSOS_PATH)/kernel/device-support.config $(BR2_EXTERNAL_HASSOS_PATH)/board/raspberrypi/kernel.config"
|
||||
BR2_LINUX_KERNEL_LZ4=y
|
||||
@ -45,6 +45,7 @@ BR2_PACKAGE_LINUX_FIRMWARE_MEDIATEK_MT7601U=y
|
||||
BR2_PACKAGE_LINUX_FIRMWARE_RALINK_RT73=y
|
||||
BR2_PACKAGE_LINUX_FIRMWARE_RALINK_RT2XX=y
|
||||
BR2_PACKAGE_LINUX_FIRMWARE_RTL_81XX=y
|
||||
BR2_PACKAGE_LINUX_FIRMWARE_RTL_815X=y
|
||||
BR2_PACKAGE_LINUX_FIRMWARE_USB_SERIAL_TI=y
|
||||
BR2_PACKAGE_RPI_FIRMWARE=y
|
||||
BR2_PACKAGE_RPI_FIRMWARE_BOOTCODE_BIN=y
|
||||
@ -54,9 +55,9 @@ BR2_PACKAGE_RPI_FIRMWARE_VARIANT_PI_CD=y
|
||||
BR2_PACKAGE_GPTFDISK=y
|
||||
BR2_PACKAGE_GPTFDISK_SGDISK=y
|
||||
# BR2_PACKAGE_LVM2_STANDARD_INSTALL is not set
|
||||
BR2_PACKAGE_RNG_TOOLS=y
|
||||
BR2_PACKAGE_USB_MODESWITCH_DATA=y
|
||||
BR2_PACKAGE_CA_CERTIFICATES=y
|
||||
BR2_PACKAGE_CIFS_UTILS=y
|
||||
BR2_PACKAGE_LIBCURL_CURL=y
|
||||
BR2_PACKAGE_LIBDNET=y
|
||||
BR2_PACKAGE_LIBCGROUP=y
|
||||
@ -75,6 +76,9 @@ BR2_PACKAGE_DROPBEAR=y
|
||||
# BR2_PACKAGE_IFUPDOWN_SCRIPTS is not set
|
||||
BR2_PACKAGE_NETWORK_MANAGER=y
|
||||
BR2_PACKAGE_NETWORK_MANAGER_CLI=y
|
||||
BR2_PACKAGE_NFS_UTILS=y
|
||||
# BR2_PACKAGE_NFS_UTILS_RPC_NFSD is not set
|
||||
BR2_PACKAGE_RPCBIND=y
|
||||
BR2_PACKAGE_IPTABLES_NFTABLES=y
|
||||
BR2_PACKAGE_IPTABLES_NFTABLES_DEFAULT=y
|
||||
BR2_PACKAGE_WIRELESS_REGDB=y
|
||||
|
@ -21,7 +21,7 @@ BR2_ROOTFS_POST_IMAGE_SCRIPT="$(BR2_EXTERNAL_HASSOS_PATH)/scripts/post-image.sh"
|
||||
BR2_ROOTFS_POST_SCRIPT_ARGS="$(BR2_EXTERNAL_HASSOS_PATH)/board/raspberrypi/rpi3-64 $(BR2_EXTERNAL_HASSOS_PATH)/board/raspberrypi/hassos-hook.sh"
|
||||
BR2_LINUX_KERNEL=y
|
||||
BR2_LINUX_KERNEL_CUSTOM_TARBALL=y
|
||||
BR2_LINUX_KERNEL_CUSTOM_TARBALL_LOCATION="$(call github,raspberrypi,linux,e3376fb94fda798d2a322e9c70789286132a1a9f)/linux-e9b8fd92399bd707bde31e3464472c1b06f5e2a0.tar.gz"
|
||||
BR2_LINUX_KERNEL_CUSTOM_TARBALL_LOCATION="https://github.com/raspberrypi/linux/archive/1.20230405.tar.gz"
|
||||
BR2_LINUX_KERNEL_DEFCONFIG="bcmrpi3"
|
||||
BR2_LINUX_KERNEL_CONFIG_FRAGMENT_FILES="$(BR2_EXTERNAL_HASSOS_PATH)/kernel/hassos.config $(BR2_EXTERNAL_HASSOS_PATH)/kernel/docker.config $(BR2_EXTERNAL_HASSOS_PATH)/kernel/device-support.config $(BR2_EXTERNAL_HASSOS_PATH)/board/raspberrypi/kernel.config"
|
||||
BR2_LINUX_KERNEL_LZ4=y
|
||||
@ -47,6 +47,7 @@ BR2_PACKAGE_LINUX_FIRMWARE_MEDIATEK_MT7601U=y
|
||||
BR2_PACKAGE_LINUX_FIRMWARE_RALINK_RT73=y
|
||||
BR2_PACKAGE_LINUX_FIRMWARE_RALINK_RT2XX=y
|
||||
BR2_PACKAGE_LINUX_FIRMWARE_RTL_81XX=y
|
||||
BR2_PACKAGE_LINUX_FIRMWARE_RTL_815X=y
|
||||
BR2_PACKAGE_LINUX_FIRMWARE_USB_SERIAL_TI=y
|
||||
BR2_PACKAGE_RPI_FIRMWARE=y
|
||||
BR2_PACKAGE_RPI_FIRMWARE_BOOTCODE_BIN=y
|
||||
@ -56,9 +57,9 @@ BR2_PACKAGE_RPI_FIRMWARE_VARIANT_PI_CD=y
|
||||
BR2_PACKAGE_GPTFDISK=y
|
||||
BR2_PACKAGE_GPTFDISK_SGDISK=y
|
||||
# BR2_PACKAGE_LVM2_STANDARD_INSTALL is not set
|
||||
BR2_PACKAGE_RNG_TOOLS=y
|
||||
BR2_PACKAGE_USB_MODESWITCH_DATA=y
|
||||
BR2_PACKAGE_CA_CERTIFICATES=y
|
||||
BR2_PACKAGE_CIFS_UTILS=y
|
||||
BR2_PACKAGE_LIBCURL_CURL=y
|
||||
BR2_PACKAGE_LIBDNET=y
|
||||
BR2_PACKAGE_LIBCGROUP=y
|
||||
@ -77,6 +78,9 @@ BR2_PACKAGE_DROPBEAR=y
|
||||
# BR2_PACKAGE_IFUPDOWN_SCRIPTS is not set
|
||||
BR2_PACKAGE_NETWORK_MANAGER=y
|
||||
BR2_PACKAGE_NETWORK_MANAGER_CLI=y
|
||||
BR2_PACKAGE_NFS_UTILS=y
|
||||
# BR2_PACKAGE_NFS_UTILS_RPC_NFSD is not set
|
||||
BR2_PACKAGE_RPCBIND=y
|
||||
BR2_PACKAGE_IPTABLES_NFTABLES=y
|
||||
BR2_PACKAGE_IPTABLES_NFTABLES_DEFAULT=y
|
||||
BR2_PACKAGE_WIRELESS_REGDB=y
|
||||
|
@ -22,7 +22,7 @@ BR2_ROOTFS_POST_IMAGE_SCRIPT="$(BR2_EXTERNAL_HASSOS_PATH)/scripts/post-image.sh"
|
||||
BR2_ROOTFS_POST_SCRIPT_ARGS="$(BR2_EXTERNAL_HASSOS_PATH)/board/raspberrypi/rpi3 $(BR2_EXTERNAL_HASSOS_PATH)/board/raspberrypi/hassos-hook.sh"
|
||||
BR2_LINUX_KERNEL=y
|
||||
BR2_LINUX_KERNEL_CUSTOM_TARBALL=y
|
||||
BR2_LINUX_KERNEL_CUSTOM_TARBALL_LOCATION="$(call github,raspberrypi,linux,e3376fb94fda798d2a322e9c70789286132a1a9f)/linux-e9b8fd92399bd707bde31e3464472c1b06f5e2a0.tar.gz"
|
||||
BR2_LINUX_KERNEL_CUSTOM_TARBALL_LOCATION="https://github.com/raspberrypi/linux/archive/1.20230405.tar.gz"
|
||||
BR2_LINUX_KERNEL_DEFCONFIG="bcm2709"
|
||||
BR2_LINUX_KERNEL_CONFIG_FRAGMENT_FILES="$(BR2_EXTERNAL_HASSOS_PATH)/kernel/hassos.config $(BR2_EXTERNAL_HASSOS_PATH)/kernel/docker.config $(BR2_EXTERNAL_HASSOS_PATH)/kernel/device-support.config $(BR2_EXTERNAL_HASSOS_PATH)/board/raspberrypi/kernel.config"
|
||||
BR2_LINUX_KERNEL_LZ4=y
|
||||
@ -48,6 +48,7 @@ BR2_PACKAGE_LINUX_FIRMWARE_MEDIATEK_MT7601U=y
|
||||
BR2_PACKAGE_LINUX_FIRMWARE_RALINK_RT73=y
|
||||
BR2_PACKAGE_LINUX_FIRMWARE_RALINK_RT2XX=y
|
||||
BR2_PACKAGE_LINUX_FIRMWARE_RTL_81XX=y
|
||||
BR2_PACKAGE_LINUX_FIRMWARE_RTL_815X=y
|
||||
BR2_PACKAGE_LINUX_FIRMWARE_USB_SERIAL_TI=y
|
||||
BR2_PACKAGE_RPI_FIRMWARE=y
|
||||
BR2_PACKAGE_RPI_FIRMWARE_BOOTCODE_BIN=y
|
||||
@ -57,9 +58,9 @@ BR2_PACKAGE_RPI_FIRMWARE_VARIANT_PI_CD=y
|
||||
BR2_PACKAGE_GPTFDISK=y
|
||||
BR2_PACKAGE_GPTFDISK_SGDISK=y
|
||||
# BR2_PACKAGE_LVM2_STANDARD_INSTALL is not set
|
||||
BR2_PACKAGE_RNG_TOOLS=y
|
||||
BR2_PACKAGE_USB_MODESWITCH_DATA=y
|
||||
BR2_PACKAGE_CA_CERTIFICATES=y
|
||||
BR2_PACKAGE_CIFS_UTILS=y
|
||||
BR2_PACKAGE_LIBCURL_CURL=y
|
||||
BR2_PACKAGE_LIBDNET=y
|
||||
BR2_PACKAGE_LIBCGROUP=y
|
||||
@ -78,6 +79,9 @@ BR2_PACKAGE_DROPBEAR=y
|
||||
# BR2_PACKAGE_IFUPDOWN_SCRIPTS is not set
|
||||
BR2_PACKAGE_NETWORK_MANAGER=y
|
||||
BR2_PACKAGE_NETWORK_MANAGER_CLI=y
|
||||
BR2_PACKAGE_NFS_UTILS=y
|
||||
# BR2_PACKAGE_NFS_UTILS_RPC_NFSD is not set
|
||||
BR2_PACKAGE_RPCBIND=y
|
||||
BR2_PACKAGE_IPTABLES_NFTABLES=y
|
||||
BR2_PACKAGE_IPTABLES_NFTABLES_DEFAULT=y
|
||||
BR2_PACKAGE_WIRELESS_REGDB=y
|
||||
|
@ -21,7 +21,7 @@ BR2_ROOTFS_POST_IMAGE_SCRIPT="$(BR2_EXTERNAL_HASSOS_PATH)/scripts/post-image.sh"
|
||||
BR2_ROOTFS_POST_SCRIPT_ARGS="$(BR2_EXTERNAL_HASSOS_PATH)/board/raspberrypi/rpi4-64 $(BR2_EXTERNAL_HASSOS_PATH)/board/raspberrypi/hassos-hook.sh"
|
||||
BR2_LINUX_KERNEL=y
|
||||
BR2_LINUX_KERNEL_CUSTOM_TARBALL=y
|
||||
BR2_LINUX_KERNEL_CUSTOM_TARBALL_LOCATION="$(call github,raspberrypi,linux,e3376fb94fda798d2a322e9c70789286132a1a9f)/linux-e9b8fd92399bd707bde31e3464472c1b06f5e2a0.tar.gz"
|
||||
BR2_LINUX_KERNEL_CUSTOM_TARBALL_LOCATION="https://github.com/raspberrypi/linux/archive/1.20230405.tar.gz"
|
||||
BR2_LINUX_KERNEL_DEFCONFIG="bcm2711"
|
||||
BR2_LINUX_KERNEL_CONFIG_FRAGMENT_FILES="$(BR2_EXTERNAL_HASSOS_PATH)/kernel/hassos.config $(BR2_EXTERNAL_HASSOS_PATH)/kernel/docker.config $(BR2_EXTERNAL_HASSOS_PATH)/kernel/device-support.config $(BR2_EXTERNAL_HASSOS_PATH)/board/raspberrypi/kernel.config"
|
||||
BR2_LINUX_KERNEL_LZ4=y
|
||||
@ -48,6 +48,7 @@ BR2_PACKAGE_LINUX_FIRMWARE_MEDIATEK_MT7601U=y
|
||||
BR2_PACKAGE_LINUX_FIRMWARE_RALINK_RT73=y
|
||||
BR2_PACKAGE_LINUX_FIRMWARE_RALINK_RT2XX=y
|
||||
BR2_PACKAGE_LINUX_FIRMWARE_RTL_81XX=y
|
||||
BR2_PACKAGE_LINUX_FIRMWARE_RTL_815X=y
|
||||
BR2_PACKAGE_LINUX_FIRMWARE_USB_SERIAL_TI=y
|
||||
BR2_PACKAGE_RPI_FIRMWARE=y
|
||||
BR2_PACKAGE_RPI_FIRMWARE_VARIANT_PI4=y
|
||||
@ -57,9 +58,9 @@ BR2_PACKAGE_GPTFDISK=y
|
||||
BR2_PACKAGE_GPTFDISK_SGDISK=y
|
||||
# BR2_PACKAGE_LVM2_STANDARD_INSTALL is not set
|
||||
BR2_PACKAGE_NVME=y
|
||||
BR2_PACKAGE_RNG_TOOLS=y
|
||||
BR2_PACKAGE_USB_MODESWITCH_DATA=y
|
||||
BR2_PACKAGE_CA_CERTIFICATES=y
|
||||
BR2_PACKAGE_CIFS_UTILS=y
|
||||
BR2_PACKAGE_LIBCURL_CURL=y
|
||||
BR2_PACKAGE_LIBDNET=y
|
||||
BR2_PACKAGE_LIBCGROUP=y
|
||||
@ -78,6 +79,9 @@ BR2_PACKAGE_DROPBEAR=y
|
||||
# BR2_PACKAGE_IFUPDOWN_SCRIPTS is not set
|
||||
BR2_PACKAGE_NETWORK_MANAGER=y
|
||||
BR2_PACKAGE_NETWORK_MANAGER_CLI=y
|
||||
BR2_PACKAGE_NFS_UTILS=y
|
||||
# BR2_PACKAGE_NFS_UTILS_RPC_NFSD is not set
|
||||
BR2_PACKAGE_RPCBIND=y
|
||||
BR2_PACKAGE_IPTABLES_NFTABLES=y
|
||||
BR2_PACKAGE_IPTABLES_NFTABLES_DEFAULT=y
|
||||
BR2_PACKAGE_WIRELESS_REGDB=y
|
||||
|
@ -22,7 +22,7 @@ BR2_ROOTFS_POST_IMAGE_SCRIPT="$(BR2_EXTERNAL_HASSOS_PATH)/scripts/post-image.sh"
|
||||
BR2_ROOTFS_POST_SCRIPT_ARGS="$(BR2_EXTERNAL_HASSOS_PATH)/board/raspberrypi/rpi4 $(BR2_EXTERNAL_HASSOS_PATH)/board/raspberrypi/hassos-hook.sh"
|
||||
BR2_LINUX_KERNEL=y
|
||||
BR2_LINUX_KERNEL_CUSTOM_TARBALL=y
|
||||
BR2_LINUX_KERNEL_CUSTOM_TARBALL_LOCATION="$(call github,raspberrypi,linux,e3376fb94fda798d2a322e9c70789286132a1a9f)/linux-e3376fb94fda798d2a322e9c70789286132a1a9f.tar.gz"
|
||||
BR2_LINUX_KERNEL_CUSTOM_TARBALL_LOCATION="https://github.com/raspberrypi/linux/archive/1.20230405.tar.gz"
|
||||
BR2_LINUX_KERNEL_DEFCONFIG="bcm2711"
|
||||
BR2_LINUX_KERNEL_CONFIG_FRAGMENT_FILES="$(BR2_EXTERNAL_HASSOS_PATH)/kernel/hassos.config $(BR2_EXTERNAL_HASSOS_PATH)/kernel/docker.config $(BR2_EXTERNAL_HASSOS_PATH)/kernel/device-support.config $(BR2_EXTERNAL_HASSOS_PATH)/board/raspberrypi/kernel.config"
|
||||
BR2_LINUX_KERNEL_LZ4=y
|
||||
@ -48,6 +48,7 @@ BR2_PACKAGE_LINUX_FIRMWARE_MEDIATEK_MT7601U=y
|
||||
BR2_PACKAGE_LINUX_FIRMWARE_RALINK_RT73=y
|
||||
BR2_PACKAGE_LINUX_FIRMWARE_RALINK_RT2XX=y
|
||||
BR2_PACKAGE_LINUX_FIRMWARE_RTL_81XX=y
|
||||
BR2_PACKAGE_LINUX_FIRMWARE_RTL_815X=y
|
||||
BR2_PACKAGE_LINUX_FIRMWARE_USB_SERIAL_TI=y
|
||||
BR2_PACKAGE_RPI_FIRMWARE=y
|
||||
BR2_PACKAGE_RPI_FIRMWARE_VARIANT_PI4=y
|
||||
@ -56,9 +57,9 @@ BR2_PACKAGE_RPI_FIRMWARE_VARIANT_PI4_CD=y
|
||||
BR2_PACKAGE_GPTFDISK=y
|
||||
BR2_PACKAGE_GPTFDISK_SGDISK=y
|
||||
# BR2_PACKAGE_LVM2_STANDARD_INSTALL is not set
|
||||
BR2_PACKAGE_RNG_TOOLS=y
|
||||
BR2_PACKAGE_USB_MODESWITCH_DATA=y
|
||||
BR2_PACKAGE_CA_CERTIFICATES=y
|
||||
BR2_PACKAGE_CIFS_UTILS=y
|
||||
BR2_PACKAGE_LIBCURL_CURL=y
|
||||
BR2_PACKAGE_LIBDNET=y
|
||||
BR2_PACKAGE_LIBCGROUP=y
|
||||
@ -77,6 +78,9 @@ BR2_PACKAGE_DROPBEAR=y
|
||||
# BR2_PACKAGE_IFUPDOWN_SCRIPTS is not set
|
||||
BR2_PACKAGE_NETWORK_MANAGER=y
|
||||
BR2_PACKAGE_NETWORK_MANAGER_CLI=y
|
||||
BR2_PACKAGE_NFS_UTILS=y
|
||||
# BR2_PACKAGE_NFS_UTILS_RPC_NFSD is not set
|
||||
BR2_PACKAGE_RPCBIND=y
|
||||
BR2_PACKAGE_IPTABLES_NFTABLES=y
|
||||
BR2_PACKAGE_IPTABLES_NFTABLES_DEFAULT=y
|
||||
BR2_PACKAGE_WIRELESS_REGDB=y
|
||||
|
@ -22,7 +22,7 @@ BR2_ROOTFS_POST_IMAGE_SCRIPT="$(BR2_EXTERNAL_HASSOS_PATH)/scripts/post-image.sh"
|
||||
BR2_ROOTFS_POST_SCRIPT_ARGS="$(BR2_EXTERNAL_HASSOS_PATH)/board/asus/tinker $(BR2_EXTERNAL_HASSOS_PATH)/board/asus/hassos-hook.sh"
|
||||
BR2_LINUX_KERNEL=y
|
||||
BR2_LINUX_KERNEL_CUSTOM_VERSION=y
|
||||
BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="6.1.21"
|
||||
BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="6.1.45"
|
||||
BR2_LINUX_KERNEL_USE_CUSTOM_CONFIG=y
|
||||
BR2_LINUX_KERNEL_CUSTOM_CONFIG_FILE="$(BR2_EXTERNAL_HASSOS_PATH)/board/asus/tinker/kernel.config"
|
||||
BR2_LINUX_KERNEL_CONFIG_FRAGMENT_FILES="$(BR2_EXTERNAL_HASSOS_PATH)/kernel/hassos.config $(BR2_EXTERNAL_HASSOS_PATH)/kernel/docker.config $(BR2_EXTERNAL_HASSOS_PATH)/kernel/device-support.config"
|
||||
@ -47,14 +47,15 @@ BR2_PACKAGE_LINUX_FIRMWARE_MEDIATEK_MT7601U=y
|
||||
BR2_PACKAGE_LINUX_FIRMWARE_RALINK_RT73=y
|
||||
BR2_PACKAGE_LINUX_FIRMWARE_RALINK_RT2XX=y
|
||||
BR2_PACKAGE_LINUX_FIRMWARE_RTL_81XX=y
|
||||
BR2_PACKAGE_LINUX_FIRMWARE_RTL_815X=y
|
||||
BR2_PACKAGE_LINUX_FIRMWARE_RTL_87XX=y
|
||||
BR2_PACKAGE_LINUX_FIRMWARE_USB_SERIAL_TI=y
|
||||
BR2_PACKAGE_GPTFDISK=y
|
||||
BR2_PACKAGE_GPTFDISK_SGDISK=y
|
||||
# BR2_PACKAGE_LVM2_STANDARD_INSTALL is not set
|
||||
BR2_PACKAGE_RNG_TOOLS=y
|
||||
BR2_PACKAGE_USB_MODESWITCH_DATA=y
|
||||
BR2_PACKAGE_CA_CERTIFICATES=y
|
||||
BR2_PACKAGE_CIFS_UTILS=y
|
||||
BR2_PACKAGE_LIBCURL_CURL=y
|
||||
BR2_PACKAGE_LIBDNET=y
|
||||
BR2_PACKAGE_LIBCGROUP=y
|
||||
@ -73,6 +74,9 @@ BR2_PACKAGE_DROPBEAR=y
|
||||
# BR2_PACKAGE_IFUPDOWN_SCRIPTS is not set
|
||||
BR2_PACKAGE_NETWORK_MANAGER=y
|
||||
BR2_PACKAGE_NETWORK_MANAGER_CLI=y
|
||||
BR2_PACKAGE_NFS_UTILS=y
|
||||
# BR2_PACKAGE_NFS_UTILS_RPC_NFSD is not set
|
||||
BR2_PACKAGE_RPCBIND=y
|
||||
BR2_PACKAGE_IPTABLES_NFTABLES=y
|
||||
BR2_PACKAGE_IPTABLES_NFTABLES_DEFAULT=y
|
||||
BR2_PACKAGE_WIRELESS_REGDB=y
|
||||
|
@ -15,17 +15,18 @@ BR2_TARGET_GENERIC_HOSTNAME="homeassistant"
|
||||
BR2_TARGET_GENERIC_ISSUE="Welcome to Home Assistant"
|
||||
BR2_INIT_SYSTEMD=y
|
||||
# BR2_TARGET_GENERIC_REMOUNT_ROOTFS_RW is not set
|
||||
BR2_ROOTFS_OVERLAY="$(BR2_EXTERNAL_HASSOS_PATH)/rootfs-overlay $(BR2_EXTERNAL_HASSOS_PATH)/board/raspberrypi/rootfs-overlay"
|
||||
BR2_ROOTFS_OVERLAY="$(BR2_EXTERNAL_HASSOS_PATH)/rootfs-overlay $(BR2_EXTERNAL_HASSOS_PATH)/board/raspberrypi/rootfs-overlay $(BR2_EXTERNAL_HASSOS_PATH)/board/raspberrypi/yellow/rootfs-overlay"
|
||||
BR2_ROOTFS_POST_BUILD_SCRIPT="$(BR2_EXTERNAL_HASSOS_PATH)/scripts/post-build.sh"
|
||||
BR2_ROOTFS_POST_IMAGE_SCRIPT="$(BR2_EXTERNAL_HASSOS_PATH)/scripts/post-image.sh"
|
||||
BR2_ROOTFS_POST_SCRIPT_ARGS="$(BR2_EXTERNAL_HASSOS_PATH)/board/raspberrypi/yellow $(BR2_EXTERNAL_HASSOS_PATH)/board/raspberrypi/hassos-hook.sh"
|
||||
BR2_LINUX_KERNEL=y
|
||||
BR2_LINUX_KERNEL_CUSTOM_TARBALL=y
|
||||
BR2_LINUX_KERNEL_CUSTOM_TARBALL_LOCATION="$(call github,raspberrypi,linux,e3376fb94fda798d2a322e9c70789286132a1a9f)/linux-e3376fb94fda798d2a322e9c70789286132a1a9f.tar.gz"
|
||||
BR2_LINUX_KERNEL_CUSTOM_TARBALL_LOCATION="https://github.com/raspberrypi/linux/archive/1.20230405.tar.gz"
|
||||
BR2_LINUX_KERNEL_DEFCONFIG="bcm2711"
|
||||
BR2_LINUX_KERNEL_CONFIG_FRAGMENT_FILES="$(BR2_EXTERNAL_HASSOS_PATH)/kernel/hassos.config $(BR2_EXTERNAL_HASSOS_PATH)/kernel/docker.config $(BR2_EXTERNAL_HASSOS_PATH)/kernel/device-support.config $(BR2_EXTERNAL_HASSOS_PATH)/board/raspberrypi/kernel.config"
|
||||
BR2_LINUX_KERNEL_LZ4=y
|
||||
BR2_LINUX_KERNEL_DTS_SUPPORT=y
|
||||
BR2_LINUX_KERNEL_DTB_OVERLAY_SUPPORT=y
|
||||
BR2_LINUX_KERNEL_INTREE_DTS_NAME="broadcom/bcm2711-rpi-cm4-ha-yellow"
|
||||
BR2_LINUX_KERNEL_NEEDS_HOST_OPENSSL=y
|
||||
BR2_LINUX_KERNEL_NEEDS_HOST_LIBELF=y
|
||||
@ -48,18 +49,20 @@ BR2_PACKAGE_LINUX_FIRMWARE_MEDIATEK_MT7601U=y
|
||||
BR2_PACKAGE_LINUX_FIRMWARE_RALINK_RT73=y
|
||||
BR2_PACKAGE_LINUX_FIRMWARE_RALINK_RT2XX=y
|
||||
BR2_PACKAGE_LINUX_FIRMWARE_RTL_81XX=y
|
||||
BR2_PACKAGE_LINUX_FIRMWARE_RTL_815X=y
|
||||
BR2_PACKAGE_LINUX_FIRMWARE_USB_SERIAL_TI=y
|
||||
BR2_PACKAGE_RPI_FIRMWARE=y
|
||||
BR2_PACKAGE_RPI_FIRMWARE_VARIANT_PI4=y
|
||||
# BR2_PACKAGE_RPI_FIRMWARE_INSTALL_DTB_OVERLAYS is not set
|
||||
BR2_PACKAGE_GPTFDISK=y
|
||||
BR2_PACKAGE_GPTFDISK_SGDISK=y
|
||||
BR2_PACKAGE_INPUT_EVENT_DAEMON=y
|
||||
# BR2_PACKAGE_LVM2_STANDARD_INSTALL is not set
|
||||
BR2_PACKAGE_NVME=y
|
||||
BR2_PACKAGE_RNG_TOOLS=y
|
||||
BR2_PACKAGE_RTL8812AU_AIRCRACK_NG=y
|
||||
BR2_PACKAGE_USB_MODESWITCH_DATA=y
|
||||
BR2_PACKAGE_CA_CERTIFICATES=y
|
||||
BR2_PACKAGE_CIFS_UTILS=y
|
||||
BR2_PACKAGE_LIBCURL_CURL=y
|
||||
BR2_PACKAGE_LIBDNET=y
|
||||
BR2_PACKAGE_LIBCGROUP=y
|
||||
@ -78,6 +81,9 @@ BR2_PACKAGE_DROPBEAR=y
|
||||
# BR2_PACKAGE_IFUPDOWN_SCRIPTS is not set
|
||||
BR2_PACKAGE_NETWORK_MANAGER=y
|
||||
BR2_PACKAGE_NETWORK_MANAGER_CLI=y
|
||||
BR2_PACKAGE_NFS_UTILS=y
|
||||
# BR2_PACKAGE_NFS_UTILS_RPC_NFSD is not set
|
||||
BR2_PACKAGE_RPCBIND=y
|
||||
BR2_PACKAGE_IPTABLES_NFTABLES=y
|
||||
BR2_PACKAGE_IPTABLES_NFTABLES_DEFAULT=y
|
||||
BR2_PACKAGE_WIRELESS_REGDB=y
|
||||
@ -133,6 +139,7 @@ BR2_PACKAGE_OS_AGENT_BOARD="Yellow"
|
||||
BR2_PACKAGE_PI_BLUETOOTH=y
|
||||
BR2_PACKAGE_RPI_RF_MOD=y
|
||||
BR2_PACKAGE_RPI_RF_MOD_DTS=y
|
||||
BR2_PACKAGE_RPI_RF_MOD_DTS_YELLOW=y
|
||||
BR2_PACKAGE_HOST_TEMPIO=y
|
||||
BR2_PACKAGE_UDISKS2=y
|
||||
BR2_PACKAGE_V4L2LOOPBACK=y
|
||||
|
25
buildroot-external/kernel/device-support-pcie.config
Normal file
25
buildroot-external/kernel/device-support-pcie.config
Normal file
@ -0,0 +1,25 @@
|
||||
CONFIG_IGB=y
|
||||
CONFIG_IGC=m
|
||||
|
||||
CONFIG_NET_VENDOR_ATHEROS=y
|
||||
CONFIG_ATL2=m
|
||||
CONFIG_ATL1=m
|
||||
CONFIG_ATL1C=m
|
||||
CONFIG_ATL1E=m
|
||||
CONFIG_ALX=m
|
||||
|
||||
CONFIG_NET_VENDOR_BROADCOM=y
|
||||
CONFIG_B44=m
|
||||
CONFIG_BCMGENET=m
|
||||
CONFIG_BNX2=m
|
||||
CONFIG_TIGON3=m
|
||||
CONFIG_BNX2X=m
|
||||
CONFIG_BNXT=m
|
||||
|
||||
CONFIG_BROADCOM_PHY=m
|
||||
|
||||
CONFIG_NET_VENDOR_STMICRO=y
|
||||
CONFIG_STMMAC_ETH=m
|
||||
CONFIG_DWMAC_INTEL=m
|
||||
CONFIG_STMMAC_PCI=m
|
||||
|
@ -11,10 +11,11 @@ CONFIG_ZRAM=y
|
||||
CONFIG_ZSWAP=y
|
||||
CONFIG_ZSWAP_DEFAULT_ON=y
|
||||
CONFIG_ZSWAP_COMPRESSOR_DEFAULT_LZ4=y
|
||||
CONFIG_ZSWAP_ZPOOL_DEFAULT_ZSMALLOC=y
|
||||
CONFIG_ZSMALLOC=y
|
||||
|
||||
CONFIG_LRU_GEN=y
|
||||
# CONFIG_LRU_GEN_ENABLED is not set
|
||||
CONFIG_LRU_GEN_ENABLED=y
|
||||
|
||||
CONFIG_CPU_FREQ_DEFAULT_GOV_ONDEMAND=y
|
||||
|
||||
@ -28,6 +29,11 @@ CONFIG_SQUASHFS_XATTR=y
|
||||
CONFIG_SQUASHFS_LZ4=y
|
||||
CONFIG_BTRFS_FS=m
|
||||
|
||||
CONFIG_MD=y
|
||||
CONFIG_BLK_DEV_DM=y
|
||||
CONFIG_BLK_DEV_LOOP=y
|
||||
CONFIG_DM_VERITY=y
|
||||
|
||||
CONFIG_SECCOMP=y
|
||||
CONFIG_SECCOMP_FILTER=y
|
||||
|
||||
@ -60,6 +66,8 @@ CONFIG_BT_HIDP=m
|
||||
CONFIG_BT_LEDS=y
|
||||
|
||||
CONFIG_IPV6=y
|
||||
CONFIG_IPV6_ROUTER_PREF=y
|
||||
CONFIG_IPV6_REACHABILITY_PROBE=y
|
||||
CONFIG_IPV6_SIT=m
|
||||
|
||||
CONFIG_IP_MROUTE=y
|
||||
@ -161,3 +169,11 @@ CONFIG_WIREGUARD=m
|
||||
|
||||
CONFIG_HID=m
|
||||
CONFIG_HIDRAW=y
|
||||
CONFIG_UHID=y
|
||||
|
||||
CONFIG_NLS=y
|
||||
CONFIG_NLS_DEFAULT="utf8"
|
||||
CONFIG_NLS_CODEPAGE_437=y
|
||||
CONFIG_NLS_ASCII=y
|
||||
CONFIG_NLS_ISO8859_1=y
|
||||
CONFIG_NLS_UTF8=y
|
||||
|
@ -1,7 +1,7 @@
|
||||
VERSION_MAJOR=10
|
||||
VERSION_BUILD=0
|
||||
VERSION_BUILD=5
|
||||
|
||||
HASSOS_NAME="Home Assistant OS"
|
||||
HASSOS_ID="haos"
|
||||
|
||||
DEPLOYMENT="development"
|
||||
DEPLOYMENT="production"
|
||||
|
@ -16,6 +16,9 @@ install_boot() {
|
||||
fi
|
||||
mount "${RAUC_IMAGE_NAME}" "${BOOT_NEW}"
|
||||
|
||||
# Avoid stale/old overlays
|
||||
rm -f "${BOOT_MNT}"/overlays/* || true
|
||||
|
||||
# Backup boot config
|
||||
cp -f "${BOOT_MNT}"/*.txt "${BOOT_TMP}/" || true
|
||||
|
||||
|
@ -1,3 +1,3 @@
|
||||
# Locally computed
|
||||
sha256 b40930bbcf80744c86c46a12bc9da056641d722716c378f5659b9e555ef833e1 LICENSE
|
||||
sha256 07a0de82e6bf25d35df3520beaea886644160bac4077c3ccb9bb615f5d266972 generic_raw_uart-b787f3d84b311bd3e07b0ca8f2aa63330030746e.tar.gz
|
||||
sha256 39937f044c491a23ffd6336c48fa01ae03172486466f4ff8c580b5f696a3a784 generic_raw_uart-908d18fd52963ef8bf54b12083650509ce116374.tar.gz
|
||||
|
@ -13,15 +13,11 @@
|
||||
#
|
||||
################################################################################
|
||||
|
||||
GENERIC_RAW_UART_VERSION = b787f3d84b311bd3e07b0ca8f2aa63330030746e
|
||||
GENERIC_RAW_UART_VERSION = 908d18fd52963ef8bf54b12083650509ce116374
|
||||
GENERIC_RAW_UART_SITE = $(call github,alexreinert,piVCCU,$(GENERIC_RAW_UART_VERSION))
|
||||
GENERIC_RAW_UART_LICENSE = GPL2
|
||||
GENERIC_RAW_UART_LICENSE_FILES = LICENSE
|
||||
GENERIC_RAW_UART_MODULE_SUBDIRS = kernel
|
||||
|
||||
define GENERIC_RAW_UART_LINUX_CONFIG_FIXUPS
|
||||
$(call KCONFIG_DISABLE_OPT,CONFIG_WERROR)
|
||||
endef
|
||||
|
||||
$(eval $(kernel-module))
|
||||
$(eval $(generic-package))
|
||||
|
@ -1,9 +1,10 @@
|
||||
[Unit]
|
||||
Description=QEMU Guest Agent
|
||||
After=syslog.target network.target
|
||||
ConditionVirtualization=|kvm
|
||||
ConditionVirtualization=|qemu
|
||||
ConditionPathExists=!/dev/virtio-ports/org.linuxcontainers.lxd
|
||||
BindTo=dev-virtio\x2dports-org.qemu.guest_agent.0.device
|
||||
After=dev-virtio\x2dports-org.qemu.guest_agent.0.device
|
||||
|
||||
[Service]
|
||||
ExecStart=/usr/libexec/qemu-ga -m virtio-serial -p /dev/virtio-ports/org.qemu.guest_agent.0
|
||||
|
@ -6,7 +6,7 @@
|
||||
|
||||
ROCKCHIP_BLOBS_VERSION = $(call qstrip,$(BR2_PACKAGE_ROCKCHIP_BLOBS_VERSION))
|
||||
ROCKCHIP_BLOBS_SOURCE = $(ROCKCHIP_BLOBS_VERSION).tar.gz
|
||||
ROCKCHIP_BLOBS_SITE = https://github.com/JeffyCN/rockchip_mirrors/archive
|
||||
ROCKCHIP_BLOBS_SITE = https://github.com/rockchip-linux/rkbin/archive
|
||||
ROCKCHIP_BLOBS_LICENSE = PROPRIETARY
|
||||
ROCKCHIP_BLOBS_INSTALL_IMAGES = YES
|
||||
|
||||
|
@ -39,6 +39,11 @@ config BR2_PACKAGE_RPI_RF_MOD_DTS_ODROID_C2
|
||||
help
|
||||
For the ODROID-C2
|
||||
|
||||
config BR2_PACKAGE_RPI_RF_MOD_DTS_YELLOW
|
||||
bool "HomeAssistant Yellow"
|
||||
help
|
||||
For the HomeAssistant Yellow
|
||||
|
||||
endchoice
|
||||
|
||||
endif
|
||||
|
@ -1,2 +1,2 @@
|
||||
sha256 b40930bbcf80744c86c46a12bc9da056641d722716c378f5659b9e555ef833e1 LICENSE
|
||||
sha256 df22bcebb72f1ce7dc01504e2a1d097dd09fed20a461b36c2dd273f6ba7f8c96 rpi-rf-mod-de15b40fe87116c14c810b25d3b5107091e8946b.tar.gz
|
||||
sha256 6298234c3bda2642018df25eaa936c2a041fe1573d0012bc7c4bdf0e4cfa5fba rpi-rf-mod-e7af99eeb4b8c480d36d5bc771484fd6d85188d6.tar.gz
|
||||
|
@ -14,11 +14,11 @@
|
||||
#
|
||||
################################################################################
|
||||
|
||||
RPI_RF_MOD_VERSION = de15b40fe87116c14c810b25d3b5107091e8946b
|
||||
RPI_RF_MOD_VERSION = e7af99eeb4b8c480d36d5bc771484fd6d85188d6
|
||||
RPI_RF_MOD_SITE = $(call github,jens-maus,RaspberryMatic,$(RPI_RF_MOD_VERSION))
|
||||
RPI_RF_MOD_LICENSE = Apache-2.0
|
||||
RPI_RF_MOD_DEPENDENCIES = host-dtc
|
||||
RPI_RF_MOD_LICENSE_FILES = LICENSE
|
||||
RPI_RF_MOD_DEPENDENCIES = host-dtc
|
||||
|
||||
ifeq ($(BR2_PACKAGE_RPI_RF_MOD_DTS_RPI),y)
|
||||
# RaspberryPi DTS file
|
||||
@ -36,6 +36,9 @@ else ifeq ($(BR2_PACKAGE_RPI_RF_MOD_DTS_ODROID_N2),y)
|
||||
else ifeq ($(BR2_PACKAGE_RPI_RF_MOD_DTS_ODROID_C2),y)
|
||||
# ODROID-C2 DTS file
|
||||
RPI_RF_MOD_DTS_FILE = rpi-rf-mod-odroid-c2
|
||||
else ifeq ($(BR2_PACKAGE_RPI_RF_MOD_DTS_YELLOW),y)
|
||||
# HomeAssistant Yellow DTS file
|
||||
RPI_RF_MOD_DTS_FILE = rpi-rf-mod-yellow
|
||||
endif
|
||||
|
||||
define RPI_RF_MOD_BUILD_CMDS
|
||||
|
@ -0,0 +1,221 @@
|
||||
From 013a0ae9045de9e25b2f51ff56785e7fbce88626 Mon Sep 17 00:00:00 2001
|
||||
Message-ID: <013a0ae9045de9e25b2f51ff56785e7fbce88626.1686815046.git.stefan@agner.ch>
|
||||
From: Stefan Agner <stefan@agner.ch>
|
||||
Date: Thu, 15 Jun 2023 09:43:59 +0200
|
||||
Subject: [PATCH] Revert "Bluetooth: Rework le_scan_restart for hci_sync"
|
||||
|
||||
This reverts commit 27d54b778ad1fb32c2c108cfe97e861c3909a46f.
|
||||
---
|
||||
net/bluetooth/hci_request.c | 88 +++++++++++++++++++++++++++++++++++++
|
||||
net/bluetooth/hci_sync.c | 75 -------------------------------
|
||||
2 files changed, 88 insertions(+), 75 deletions(-)
|
||||
|
||||
diff --git a/net/bluetooth/hci_request.c b/net/bluetooth/hci_request.c
|
||||
index f7e006a36382..43178a21ea7e 100644
|
||||
--- a/net/bluetooth/hci_request.c
|
||||
+++ b/net/bluetooth/hci_request.c
|
||||
@@ -909,8 +909,95 @@ static void set_random_addr(struct hci_request *req, bdaddr_t *rpa)
|
||||
hci_req_add(req, HCI_OP_LE_SET_RANDOM_ADDR, 6, rpa);
|
||||
}
|
||||
|
||||
+static int le_scan_restart(struct hci_request *req, unsigned long opt)
|
||||
+{
|
||||
+ struct hci_dev *hdev = req->hdev;
|
||||
+
|
||||
+ /* If controller is not scanning we are done. */
|
||||
+ if (!hci_dev_test_flag(hdev, HCI_LE_SCAN))
|
||||
+ return 0;
|
||||
+
|
||||
+ if (hdev->scanning_paused) {
|
||||
+ bt_dev_dbg(hdev, "Scanning is paused for suspend");
|
||||
+ return 0;
|
||||
+ }
|
||||
+
|
||||
+ hci_req_add_le_scan_disable(req, false);
|
||||
+
|
||||
+ if (use_ext_scan(hdev)) {
|
||||
+ struct hci_cp_le_set_ext_scan_enable ext_enable_cp;
|
||||
+
|
||||
+ memset(&ext_enable_cp, 0, sizeof(ext_enable_cp));
|
||||
+ ext_enable_cp.enable = LE_SCAN_ENABLE;
|
||||
+ ext_enable_cp.filter_dup = LE_SCAN_FILTER_DUP_ENABLE;
|
||||
+
|
||||
+ hci_req_add(req, HCI_OP_LE_SET_EXT_SCAN_ENABLE,
|
||||
+ sizeof(ext_enable_cp), &ext_enable_cp);
|
||||
+ } else {
|
||||
+ struct hci_cp_le_set_scan_enable cp;
|
||||
+
|
||||
+ memset(&cp, 0, sizeof(cp));
|
||||
+ cp.enable = LE_SCAN_ENABLE;
|
||||
+ cp.filter_dup = LE_SCAN_FILTER_DUP_ENABLE;
|
||||
+ hci_req_add(req, HCI_OP_LE_SET_SCAN_ENABLE, sizeof(cp), &cp);
|
||||
+ }
|
||||
+
|
||||
+ return 0;
|
||||
+}
|
||||
+
|
||||
+static void le_scan_restart_work(struct work_struct *work)
|
||||
+{
|
||||
+ struct hci_dev *hdev = container_of(work, struct hci_dev,
|
||||
+ le_scan_restart.work);
|
||||
+ unsigned long timeout, duration, scan_start, now;
|
||||
+ u8 status;
|
||||
+
|
||||
+ bt_dev_dbg(hdev, "");
|
||||
+
|
||||
+ hci_req_sync(hdev, le_scan_restart, 0, HCI_CMD_TIMEOUT, &status);
|
||||
+ if (status) {
|
||||
+ bt_dev_err(hdev, "failed to restart LE scan: status %d",
|
||||
+ status);
|
||||
+ return;
|
||||
+ }
|
||||
+
|
||||
+ hci_dev_lock(hdev);
|
||||
+
|
||||
+ if (!test_bit(HCI_QUIRK_STRICT_DUPLICATE_FILTER, &hdev->quirks) ||
|
||||
+ !hdev->discovery.scan_start)
|
||||
+ goto unlock;
|
||||
+
|
||||
+ /* When the scan was started, hdev->le_scan_disable has been queued
|
||||
+ * after duration from scan_start. During scan restart this job
|
||||
+ * has been canceled, and we need to queue it again after proper
|
||||
+ * timeout, to make sure that scan does not run indefinitely.
|
||||
+ */
|
||||
+ duration = hdev->discovery.scan_duration;
|
||||
+ scan_start = hdev->discovery.scan_start;
|
||||
+ now = jiffies;
|
||||
+ if (now - scan_start <= duration) {
|
||||
+ int elapsed;
|
||||
+
|
||||
+ if (now >= scan_start)
|
||||
+ elapsed = now - scan_start;
|
||||
+ else
|
||||
+ elapsed = ULONG_MAX - scan_start + now;
|
||||
+
|
||||
+ timeout = duration - elapsed;
|
||||
+ } else {
|
||||
+ timeout = 0;
|
||||
+ }
|
||||
+
|
||||
+ queue_delayed_work(hdev->req_workqueue,
|
||||
+ &hdev->le_scan_disable, timeout);
|
||||
+
|
||||
+unlock:
|
||||
+ hci_dev_unlock(hdev);
|
||||
+}
|
||||
+
|
||||
void hci_request_setup(struct hci_dev *hdev)
|
||||
{
|
||||
+ INIT_DELAYED_WORK(&hdev->le_scan_restart, le_scan_restart_work);
|
||||
INIT_DELAYED_WORK(&hdev->interleave_scan, interleave_scan_work);
|
||||
}
|
||||
|
||||
@@ -919,4 +1006,5 @@ void hci_request_cancel_all(struct hci_dev *hdev)
|
||||
__hci_cmd_sync_cancel(hdev, ENODEV);
|
||||
|
||||
cancel_interleave_scan(hdev);
|
||||
+ cancel_delayed_work_sync(&hdev->le_scan_restart);
|
||||
}
|
||||
diff --git a/net/bluetooth/hci_sync.c b/net/bluetooth/hci_sync.c
|
||||
index 3eec688a88a9..34f29d83b7ff 100644
|
||||
--- a/net/bluetooth/hci_sync.c
|
||||
+++ b/net/bluetooth/hci_sync.c
|
||||
@@ -393,79 +393,6 @@ static void le_scan_disable(struct work_struct *work)
|
||||
hci_dev_unlock(hdev);
|
||||
}
|
||||
|
||||
-static int hci_le_set_scan_enable_sync(struct hci_dev *hdev, u8 val,
|
||||
- u8 filter_dup);
|
||||
-static int hci_le_scan_restart_sync(struct hci_dev *hdev)
|
||||
-{
|
||||
- /* If controller is not scanning we are done. */
|
||||
- if (!hci_dev_test_flag(hdev, HCI_LE_SCAN))
|
||||
- return 0;
|
||||
-
|
||||
- if (hdev->scanning_paused) {
|
||||
- bt_dev_dbg(hdev, "Scanning is paused for suspend");
|
||||
- return 0;
|
||||
- }
|
||||
-
|
||||
- hci_le_set_scan_enable_sync(hdev, LE_SCAN_DISABLE, 0x00);
|
||||
- return hci_le_set_scan_enable_sync(hdev, LE_SCAN_ENABLE,
|
||||
- LE_SCAN_FILTER_DUP_ENABLE);
|
||||
-}
|
||||
-
|
||||
-static int le_scan_restart_sync(struct hci_dev *hdev, void *data)
|
||||
-{
|
||||
- return hci_le_scan_restart_sync(hdev);
|
||||
-}
|
||||
-
|
||||
-static void le_scan_restart(struct work_struct *work)
|
||||
-{
|
||||
- struct hci_dev *hdev = container_of(work, struct hci_dev,
|
||||
- le_scan_restart.work);
|
||||
- unsigned long timeout, duration, scan_start, now;
|
||||
- int status;
|
||||
-
|
||||
- bt_dev_dbg(hdev, "");
|
||||
-
|
||||
- hci_dev_lock(hdev);
|
||||
-
|
||||
- status = hci_cmd_sync_queue(hdev, le_scan_restart_sync, NULL, NULL);
|
||||
- if (status) {
|
||||
- bt_dev_err(hdev, "failed to restart LE scan: status %d",
|
||||
- status);
|
||||
- goto unlock;
|
||||
- }
|
||||
-
|
||||
- if (!test_bit(HCI_QUIRK_STRICT_DUPLICATE_FILTER, &hdev->quirks) ||
|
||||
- !hdev->discovery.scan_start)
|
||||
- goto unlock;
|
||||
-
|
||||
- /* When the scan was started, hdev->le_scan_disable has been queued
|
||||
- * after duration from scan_start. During scan restart this job
|
||||
- * has been canceled, and we need to queue it again after proper
|
||||
- * timeout, to make sure that scan does not run indefinitely.
|
||||
- */
|
||||
- duration = hdev->discovery.scan_duration;
|
||||
- scan_start = hdev->discovery.scan_start;
|
||||
- now = jiffies;
|
||||
- if (now - scan_start <= duration) {
|
||||
- int elapsed;
|
||||
-
|
||||
- if (now >= scan_start)
|
||||
- elapsed = now - scan_start;
|
||||
- else
|
||||
- elapsed = ULONG_MAX - scan_start + now;
|
||||
-
|
||||
- timeout = duration - elapsed;
|
||||
- } else {
|
||||
- timeout = 0;
|
||||
- }
|
||||
-
|
||||
- queue_delayed_work(hdev->req_workqueue,
|
||||
- &hdev->le_scan_disable, timeout);
|
||||
-
|
||||
-unlock:
|
||||
- hci_dev_unlock(hdev);
|
||||
-}
|
||||
-
|
||||
static int reenable_adv_sync(struct hci_dev *hdev, void *data)
|
||||
{
|
||||
bt_dev_dbg(hdev, "");
|
||||
@@ -632,7 +559,6 @@ void hci_cmd_sync_init(struct hci_dev *hdev)
|
||||
INIT_WORK(&hdev->cmd_sync_cancel_work, hci_cmd_sync_cancel_work);
|
||||
INIT_WORK(&hdev->reenable_adv_work, reenable_adv);
|
||||
INIT_DELAYED_WORK(&hdev->le_scan_disable, le_scan_disable);
|
||||
- INIT_DELAYED_WORK(&hdev->le_scan_restart, le_scan_restart);
|
||||
INIT_DELAYED_WORK(&hdev->adv_instance_expire, adv_timeout_expire);
|
||||
}
|
||||
|
||||
@@ -4771,7 +4697,6 @@ int hci_dev_close_sync(struct hci_dev *hdev)
|
||||
cancel_delayed_work(&hdev->power_off);
|
||||
cancel_delayed_work(&hdev->ncmd_timer);
|
||||
cancel_delayed_work(&hdev->le_scan_disable);
|
||||
- cancel_delayed_work(&hdev->le_scan_restart);
|
||||
|
||||
hci_request_cancel_all(hdev);
|
||||
|
||||
--
|
||||
2.41.0
|
||||
|
@ -0,0 +1,56 @@
|
||||
From b9182b02829b158d55acc53a0bcec1ed667b2668 Mon Sep 17 00:00:00 2001
|
||||
Message-Id: <b9182b02829b158d55acc53a0bcec1ed667b2668.1680000784.git.stefan@agner.ch>
|
||||
From: Stefan Agner <stefan@agner.ch>
|
||||
Date: Tue, 28 Mar 2023 12:02:10 +0200
|
||||
Subject: [PATCH] ipv6: add option to explicitly enable reachability test
|
||||
|
||||
Systems which act as host as well as router might prefer the host
|
||||
behavior. Currently the kernel does not allow to use IPv6 forwarding
|
||||
globally and at the same time use route reachability probing.
|
||||
|
||||
Add a compile time flag to enable route reachability probe in any
|
||||
case.
|
||||
|
||||
Signed-off-by: Stefan Agner <stefan@agner.ch>
|
||||
---
|
||||
net/ipv6/Kconfig | 9 +++++++++
|
||||
net/ipv6/route.c | 3 ++-
|
||||
2 files changed, 11 insertions(+), 1 deletion(-)
|
||||
|
||||
diff --git a/net/ipv6/Kconfig b/net/ipv6/Kconfig
|
||||
index 658bfed1df8b..5147fd4c93ff 100644
|
||||
--- a/net/ipv6/Kconfig
|
||||
+++ b/net/ipv6/Kconfig
|
||||
@@ -48,6 +48,15 @@ config IPV6_OPTIMISTIC_DAD
|
||||
|
||||
If unsure, say N.
|
||||
|
||||
+config IPV6_REACHABILITY_PROBE
|
||||
+ bool "IPv6: Always use reachability probing (RFC 4191)"
|
||||
+ help
|
||||
+ By default reachability probing is disabled on router devices (when
|
||||
+ IPv6 forwarding is enabled). This option explicitly enables
|
||||
+ reachability probing always.
|
||||
+
|
||||
+ If unsure, say N.
|
||||
+
|
||||
config INET6_AH
|
||||
tristate "IPv6: AH transformation"
|
||||
select XFRM_AH
|
||||
diff --git a/net/ipv6/route.c b/net/ipv6/route.c
|
||||
index 0fdb03df2287..5e1e1f02f400 100644
|
||||
--- a/net/ipv6/route.c
|
||||
+++ b/net/ipv6/route.c
|
||||
@@ -2210,7 +2210,8 @@ struct rt6_info *ip6_pol_route(struct net *net, struct fib6_table *table,
|
||||
|
||||
strict |= flags & RT6_LOOKUP_F_IFACE;
|
||||
strict |= flags & RT6_LOOKUP_F_IGNORE_LINKSTATE;
|
||||
- if (net->ipv6.devconf_all->forwarding == 0)
|
||||
+ if (net->ipv6.devconf_all->forwarding == 0 ||
|
||||
+ IS_ENABLED(IPV6_REACHABILITY_PROBE))
|
||||
strict |= RT6_LOOKUP_F_REACHABLE;
|
||||
|
||||
rcu_read_lock();
|
||||
--
|
||||
2.40.0
|
||||
|
@ -0,0 +1,323 @@
|
||||
From c23703defb6008dde794e198abeaf2de008fe7ae Mon Sep 17 00:00:00 2001
|
||||
Message-ID: <c23703defb6008dde794e198abeaf2de008fe7ae.1691152222.git.stefan@agner.ch>
|
||||
In-Reply-To: <ea06f0028a835c4cafda535f6a36b0d63035fd4c.1691152222.git.stefan@agner.ch>
|
||||
References: <ea06f0028a835c4cafda535f6a36b0d63035fd4c.1691152222.git.stefan@agner.ch>
|
||||
From: Aurelien Jarno <aurelien@aurel32.net>
|
||||
Date: Mon, 28 Nov 2022 19:47:17 +0100
|
||||
Subject: [PATCH] hwrng: add Rockchip SoC hwrng driver
|
||||
|
||||
Rockchip SoCs used to have a random number generator as part of their
|
||||
crypto device, and support for it has to be added to the corresponding
|
||||
driver. However newer Rockchip SoCs like the RK356x have an independent
|
||||
True Random Number Generator device. This patch adds a driver for it,
|
||||
greatly inspired from the downstream driver.
|
||||
|
||||
The TRNG device does not seem to have a signal conditionner and the FIPS
|
||||
140-2 test returns a lot of failures. They can be reduced by increasing
|
||||
RK_RNG_SAMPLE_CNT, in a tradeoff between quality and speed. This value
|
||||
has been adjusted to get ~90% of successes and the quality value has
|
||||
been set accordingly.
|
||||
|
||||
Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
|
||||
[conservatively estimate quality as per review feedback]
|
||||
Signed-off-by: Stefan Agner <stefan@agner.ch>
|
||||
---
|
||||
drivers/char/hw_random/Kconfig | 14 ++
|
||||
drivers/char/hw_random/Makefile | 1 +
|
||||
drivers/char/hw_random/rockchip-rng.c | 250 ++++++++++++++++++++++++++
|
||||
3 files changed, 265 insertions(+)
|
||||
create mode 100644 drivers/char/hw_random/rockchip-rng.c
|
||||
|
||||
diff --git a/drivers/char/hw_random/Kconfig b/drivers/char/hw_random/Kconfig
|
||||
index 3da8e85f8aae..8e5c88504f72 100644
|
||||
--- a/drivers/char/hw_random/Kconfig
|
||||
+++ b/drivers/char/hw_random/Kconfig
|
||||
@@ -549,6 +549,20 @@ config HW_RANDOM_CN10K
|
||||
To compile this driver as a module, choose M here.
|
||||
The module will be called cn10k_rng. If unsure, say Y.
|
||||
|
||||
+config HW_RANDOM_ROCKCHIP
|
||||
+ tristate "Rockchip True Random Number Generator"
|
||||
+ depends on HW_RANDOM && (ARCH_ROCKCHIP || COMPILE_TEST)
|
||||
+ depends on HAS_IOMEM
|
||||
+ default HW_RANDOM
|
||||
+ help
|
||||
+ This driver provides kernel-side support for the True Random Number
|
||||
+ Generator hardware found on some Rockchip SoC like RK3566 or RK3568.
|
||||
+
|
||||
+ To compile this driver as a module, choose M here: the
|
||||
+ module will be called rockchip-rng.
|
||||
+
|
||||
+ If unsure, say Y.
|
||||
+
|
||||
endif # HW_RANDOM
|
||||
|
||||
config UML_RANDOM
|
||||
diff --git a/drivers/char/hw_random/Makefile b/drivers/char/hw_random/Makefile
|
||||
index 3e948cf04476..b7e989535fd6 100644
|
||||
--- a/drivers/char/hw_random/Makefile
|
||||
+++ b/drivers/char/hw_random/Makefile
|
||||
@@ -47,3 +47,4 @@ obj-$(CONFIG_HW_RANDOM_XIPHERA) += xiphera-trng.o
|
||||
obj-$(CONFIG_HW_RANDOM_ARM_SMCCC_TRNG) += arm_smccc_trng.o
|
||||
obj-$(CONFIG_HW_RANDOM_CN10K) += cn10k-rng.o
|
||||
obj-$(CONFIG_HW_RANDOM_POLARFIRE_SOC) += mpfs-rng.o
|
||||
+obj-$(CONFIG_HW_RANDOM_ROCKCHIP) += rockchip-rng.o
|
||||
diff --git a/drivers/char/hw_random/rockchip-rng.c b/drivers/char/hw_random/rockchip-rng.c
|
||||
new file mode 100644
|
||||
index 000000000000..9b7b334d6410
|
||||
--- /dev/null
|
||||
+++ b/drivers/char/hw_random/rockchip-rng.c
|
||||
@@ -0,0 +1,250 @@
|
||||
+// SPDX-License-Identifier: GPL-2.0
|
||||
+/*
|
||||
+ * rockchip-rng.c True Random Number Generator driver for Rockchip SoCs
|
||||
+ *
|
||||
+ * Copyright (c) 2018, Fuzhou Rockchip Electronics Co., Ltd.
|
||||
+ * Copyright (c) 2022, Aurelien Jarno
|
||||
+ * Authors:
|
||||
+ * Lin Jinhan <troy.lin@rock-chips.com>
|
||||
+ * Aurelien Jarno <aurelien@aurel32.net>
|
||||
+ */
|
||||
+#include <linux/clk.h>
|
||||
+#include <linux/hw_random.h>
|
||||
+#include <linux/io.h>
|
||||
+#include <linux/iopoll.h>
|
||||
+#include <linux/kernel.h>
|
||||
+#include <linux/module.h>
|
||||
+#include <linux/of_platform.h>
|
||||
+#include <linux/pm_runtime.h>
|
||||
+#include <linux/reset.h>
|
||||
+#include <linux/slab.h>
|
||||
+
|
||||
+#define RK_RNG_AUTOSUSPEND_DELAY 100
|
||||
+#define RK_RNG_MAX_BYTE 32
|
||||
+#define RK_RNG_POLL_PERIOD_US 100
|
||||
+#define RK_RNG_POLL_TIMEOUT_US 10000
|
||||
+
|
||||
+/*
|
||||
+ * TRNG collects osc ring output bit every RK_RNG_SAMPLE_CNT time. The value is
|
||||
+ * a tradeoff between speed and quality and has been adjusted to get a quality
|
||||
+ * of ~900 (~90% of FIPS 140-2 successes).
|
||||
+ */
|
||||
+#define RK_RNG_SAMPLE_CNT 1000
|
||||
+
|
||||
+/* TRNG registers from RK3568 TRM-Part2, section 5.4.1 */
|
||||
+#define TRNG_RST_CTL 0x0004
|
||||
+#define TRNG_RNG_CTL 0x0400
|
||||
+#define TRNG_RNG_CTL_LEN_64_BIT (0x00 << 4)
|
||||
+#define TRNG_RNG_CTL_LEN_128_BIT (0x01 << 4)
|
||||
+#define TRNG_RNG_CTL_LEN_192_BIT (0x02 << 4)
|
||||
+#define TRNG_RNG_CTL_LEN_256_BIT (0x03 << 4)
|
||||
+#define TRNG_RNG_CTL_OSC_RING_SPEED_0 (0x00 << 2)
|
||||
+#define TRNG_RNG_CTL_OSC_RING_SPEED_1 (0x01 << 2)
|
||||
+#define TRNG_RNG_CTL_OSC_RING_SPEED_2 (0x02 << 2)
|
||||
+#define TRNG_RNG_CTL_OSC_RING_SPEED_3 (0x03 << 2)
|
||||
+#define TRNG_RNG_CTL_ENABLE BIT(1)
|
||||
+#define TRNG_RNG_CTL_START BIT(0)
|
||||
+#define TRNG_RNG_SAMPLE_CNT 0x0404
|
||||
+#define TRNG_RNG_DOUT_0 0x0410
|
||||
+#define TRNG_RNG_DOUT_1 0x0414
|
||||
+#define TRNG_RNG_DOUT_2 0x0418
|
||||
+#define TRNG_RNG_DOUT_3 0x041c
|
||||
+#define TRNG_RNG_DOUT_4 0x0420
|
||||
+#define TRNG_RNG_DOUT_5 0x0424
|
||||
+#define TRNG_RNG_DOUT_6 0x0428
|
||||
+#define TRNG_RNG_DOUT_7 0x042c
|
||||
+
|
||||
+struct rk_rng {
|
||||
+ struct hwrng rng;
|
||||
+ void __iomem *base;
|
||||
+ struct reset_control *rst;
|
||||
+ int clk_num;
|
||||
+ struct clk_bulk_data *clk_bulks;
|
||||
+};
|
||||
+
|
||||
+/* The mask determine the bits that are updated */
|
||||
+static void rk_rng_write_ctl(struct rk_rng *rng, u32 val, u32 mask)
|
||||
+{
|
||||
+ writel_relaxed((mask << 16) | val, rng->base + TRNG_RNG_CTL);
|
||||
+}
|
||||
+
|
||||
+static int rk_rng_init(struct hwrng *rng)
|
||||
+{
|
||||
+ struct rk_rng *rk_rng = container_of(rng, struct rk_rng, rng);
|
||||
+ u32 reg;
|
||||
+ int ret;
|
||||
+
|
||||
+ /* start clocks */
|
||||
+ ret = clk_bulk_prepare_enable(rk_rng->clk_num, rk_rng->clk_bulks);
|
||||
+ if (ret < 0) {
|
||||
+ dev_err((struct device *) rk_rng->rng.priv,
|
||||
+ "Failed to enable clks %d\n", ret);
|
||||
+ return ret;
|
||||
+ }
|
||||
+
|
||||
+ /* set the sample period */
|
||||
+ writel(RK_RNG_SAMPLE_CNT, rk_rng->base + TRNG_RNG_SAMPLE_CNT);
|
||||
+
|
||||
+ /* set osc ring speed and enable it */
|
||||
+ reg = TRNG_RNG_CTL_LEN_256_BIT |
|
||||
+ TRNG_RNG_CTL_OSC_RING_SPEED_0 |
|
||||
+ TRNG_RNG_CTL_ENABLE;
|
||||
+ rk_rng_write_ctl(rk_rng, reg, 0xffff);
|
||||
+
|
||||
+ return 0;
|
||||
+}
|
||||
+
|
||||
+static void rk_rng_cleanup(struct hwrng *rng)
|
||||
+{
|
||||
+ struct rk_rng *rk_rng = container_of(rng, struct rk_rng, rng);
|
||||
+ u32 reg;
|
||||
+
|
||||
+ /* stop TRNG */
|
||||
+ reg = 0;
|
||||
+ rk_rng_write_ctl(rk_rng, reg, 0xffff);
|
||||
+
|
||||
+ /* stop clocks */
|
||||
+ clk_bulk_disable_unprepare(rk_rng->clk_num, rk_rng->clk_bulks);
|
||||
+}
|
||||
+
|
||||
+static int rk_rng_read(struct hwrng *rng, void *buf, size_t max, bool wait)
|
||||
+{
|
||||
+ struct rk_rng *rk_rng = container_of(rng, struct rk_rng, rng);
|
||||
+ u32 reg;
|
||||
+ int ret = 0;
|
||||
+ int i;
|
||||
+
|
||||
+ pm_runtime_get_sync((struct device *) rk_rng->rng.priv);
|
||||
+
|
||||
+ /* Start collecting random data */
|
||||
+ reg = TRNG_RNG_CTL_START;
|
||||
+ rk_rng_write_ctl(rk_rng, reg, reg);
|
||||
+
|
||||
+ ret = readl_poll_timeout(rk_rng->base + TRNG_RNG_CTL, reg,
|
||||
+ !(reg & TRNG_RNG_CTL_START),
|
||||
+ RK_RNG_POLL_PERIOD_US,
|
||||
+ RK_RNG_POLL_TIMEOUT_US);
|
||||
+ if (ret < 0)
|
||||
+ goto out;
|
||||
+
|
||||
+ /* Read random data stored in the registers */
|
||||
+ ret = min_t(size_t, max, RK_RNG_MAX_BYTE);
|
||||
+ for (i = 0; i < ret; i += 4) {
|
||||
+ *(u32 *)(buf + i) = readl_relaxed(rk_rng->base + TRNG_RNG_DOUT_0 + i);
|
||||
+ }
|
||||
+
|
||||
+out:
|
||||
+ pm_runtime_mark_last_busy((struct device *) rk_rng->rng.priv);
|
||||
+ pm_runtime_put_sync_autosuspend((struct device *) rk_rng->rng.priv);
|
||||
+
|
||||
+ return ret;
|
||||
+}
|
||||
+
|
||||
+static int rk_rng_probe(struct platform_device *pdev)
|
||||
+{
|
||||
+ struct device *dev = &pdev->dev;
|
||||
+ struct rk_rng *rk_rng;
|
||||
+ int ret;
|
||||
+
|
||||
+ rk_rng = devm_kzalloc(dev, sizeof(struct rk_rng), GFP_KERNEL);
|
||||
+ if (!rk_rng)
|
||||
+ return -ENOMEM;
|
||||
+
|
||||
+ rk_rng->base = devm_platform_ioremap_resource(pdev, 0);
|
||||
+ if (IS_ERR(rk_rng->base))
|
||||
+ return PTR_ERR(rk_rng->base);
|
||||
+
|
||||
+ rk_rng->clk_num = devm_clk_bulk_get_all(dev, &rk_rng->clk_bulks);
|
||||
+ if (rk_rng->clk_num < 0)
|
||||
+ return dev_err_probe(dev, rk_rng->clk_num,
|
||||
+ "Failed to get clks property\n");
|
||||
+
|
||||
+ rk_rng->rst = devm_reset_control_array_get(&pdev->dev, false, false);
|
||||
+ if (IS_ERR(rk_rng->rst))
|
||||
+ return dev_err_probe(dev, PTR_ERR(rk_rng->rst),
|
||||
+ "Failed to get reset property\n");
|
||||
+
|
||||
+ reset_control_assert(rk_rng->rst);
|
||||
+ udelay(2);
|
||||
+ reset_control_deassert(rk_rng->rst);
|
||||
+
|
||||
+ platform_set_drvdata(pdev, rk_rng);
|
||||
+
|
||||
+ rk_rng->rng.name = dev_driver_string(dev);
|
||||
+#ifndef CONFIG_PM
|
||||
+ rk_rng->rng.init = rk_rng_init;
|
||||
+ rk_rng->rng.cleanup = rk_rng_cleanup;
|
||||
+#endif
|
||||
+ rk_rng->rng.read = rk_rng_read;
|
||||
+ rk_rng->rng.priv = (unsigned long) dev;
|
||||
+ rk_rng->rng.quality = 512;
|
||||
+
|
||||
+ pm_runtime_set_autosuspend_delay(dev, RK_RNG_AUTOSUSPEND_DELAY);
|
||||
+ pm_runtime_use_autosuspend(dev);
|
||||
+ pm_runtime_enable(dev);
|
||||
+
|
||||
+ ret = devm_hwrng_register(dev, &rk_rng->rng);
|
||||
+ if (ret)
|
||||
+ return dev_err_probe(&pdev->dev, ret, "Failed to register Rockchip hwrng\n");
|
||||
+
|
||||
+ dev_info(&pdev->dev, "Registered Rockchip hwrng\n");
|
||||
+
|
||||
+ return 0;
|
||||
+}
|
||||
+
|
||||
+static int rk_rng_remove(struct platform_device *pdev)
|
||||
+{
|
||||
+ pm_runtime_disable(&pdev->dev);
|
||||
+
|
||||
+ return 0;
|
||||
+}
|
||||
+
|
||||
+#ifdef CONFIG_PM
|
||||
+static int rk_rng_runtime_suspend(struct device *dev)
|
||||
+{
|
||||
+ struct rk_rng *rk_rng = dev_get_drvdata(dev);
|
||||
+
|
||||
+ rk_rng_cleanup(&rk_rng->rng);
|
||||
+
|
||||
+ return 0;
|
||||
+}
|
||||
+
|
||||
+static int rk_rng_runtime_resume(struct device *dev)
|
||||
+{
|
||||
+ struct rk_rng *rk_rng = dev_get_drvdata(dev);
|
||||
+
|
||||
+ return rk_rng_init(&rk_rng->rng);
|
||||
+}
|
||||
+#endif
|
||||
+
|
||||
+static const struct dev_pm_ops rk_rng_pm_ops = {
|
||||
+ SET_RUNTIME_PM_OPS(rk_rng_runtime_suspend,
|
||||
+ rk_rng_runtime_resume, NULL)
|
||||
+ SET_SYSTEM_SLEEP_PM_OPS(pm_runtime_force_suspend,
|
||||
+ pm_runtime_force_resume)
|
||||
+};
|
||||
+
|
||||
+static const struct of_device_id rk_rng_dt_match[] = {
|
||||
+ {
|
||||
+ .compatible = "rockchip,rk3568-rng",
|
||||
+ },
|
||||
+ {},
|
||||
+};
|
||||
+
|
||||
+MODULE_DEVICE_TABLE(of, rk_rng_dt_match);
|
||||
+
|
||||
+static struct platform_driver rk_rng_driver = {
|
||||
+ .driver = {
|
||||
+ .name = "rockchip-rng",
|
||||
+ .pm = &rk_rng_pm_ops,
|
||||
+ .of_match_table = rk_rng_dt_match,
|
||||
+ },
|
||||
+ .probe = rk_rng_probe,
|
||||
+ .remove = rk_rng_remove,
|
||||
+};
|
||||
+
|
||||
+module_platform_driver(rk_rng_driver);
|
||||
+
|
||||
+MODULE_DESCRIPTION("Rockchip True Random Number Generator driver");
|
||||
+MODULE_AUTHOR("Lin Jinhan <troy.lin@rock-chips.com>, Aurelien Jarno <aurelien@aurel32.net>");
|
||||
+MODULE_LICENSE("GPL v2");
|
||||
--
|
||||
2.41.0
|
||||
|
@ -0,0 +1,38 @@
|
||||
From f53dcb8fc3aeaa2b633d6a37086088add896149a Mon Sep 17 00:00:00 2001
|
||||
Message-ID: <f53dcb8fc3aeaa2b633d6a37086088add896149a.1691152222.git.stefan@agner.ch>
|
||||
In-Reply-To: <ea06f0028a835c4cafda535f6a36b0d63035fd4c.1691152222.git.stefan@agner.ch>
|
||||
References: <ea06f0028a835c4cafda535f6a36b0d63035fd4c.1691152222.git.stefan@agner.ch>
|
||||
From: Aurelien Jarno <aurelien@aurel32.net>
|
||||
Date: Mon, 28 Nov 2022 19:47:18 +0100
|
||||
Subject: [PATCH] arm64: dts: rockchip: add DT entry for RNG to RK356x
|
||||
|
||||
Enable the just added Rockchip RNG driver for RK356x SoCs.
|
||||
|
||||
Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
|
||||
---
|
||||
arch/arm64/boot/dts/rockchip/rk356x.dtsi | 9 +++++++++
|
||||
1 file changed, 9 insertions(+)
|
||||
|
||||
diff --git a/arch/arm64/boot/dts/rockchip/rk356x.dtsi b/arch/arm64/boot/dts/rockchip/rk356x.dtsi
|
||||
index 1d423daae971..2b26031de7f5 100644
|
||||
--- a/arch/arm64/boot/dts/rockchip/rk356x.dtsi
|
||||
+++ b/arch/arm64/boot/dts/rockchip/rk356x.dtsi
|
||||
@@ -1771,6 +1771,15 @@ usb2phy1_otg: otg-port {
|
||||
};
|
||||
};
|
||||
|
||||
+ rng: rng@fe388000 {
|
||||
+ compatible = "rockchip,rk3568-rng";
|
||||
+ reg = <0x0 0xfe388000 0x0 0x4000>;
|
||||
+ clocks = <&cru CLK_TRNG_NS>, <&cru HCLK_TRNG_NS>;
|
||||
+ clock-names = "trng_clk", "trng_hclk";
|
||||
+ resets = <&cru SRST_TRNG_NS>;
|
||||
+ reset-names = "reset";
|
||||
+ };
|
||||
+
|
||||
pinctrl: pinctrl {
|
||||
compatible = "rockchip,rk3568-pinctrl";
|
||||
rockchip,grf = <&grf>;
|
||||
--
|
||||
2.41.0
|
||||
|
@ -0,0 +1,85 @@
|
||||
From 9a6bfcbf61975293991f44b1b319eb9731b85768 Mon Sep 17 00:00:00 2001
|
||||
Message-ID: <9a6bfcbf61975293991f44b1b319eb9731b85768.1691152222.git.stefan@agner.ch>
|
||||
In-Reply-To: <ea06f0028a835c4cafda535f6a36b0d63035fd4c.1691152222.git.stefan@agner.ch>
|
||||
References: <ea06f0028a835c4cafda535f6a36b0d63035fd4c.1691152222.git.stefan@agner.ch>
|
||||
From: Aurelien Jarno <aurelien@aurel32.net>
|
||||
Date: Mon, 28 Nov 2022 19:47:16 +0100
|
||||
Subject: [PATCH] dt-bindings: RNG: Add Rockchip RNG bindings
|
||||
|
||||
Add the RNG bindings for the RK3568 SoC from Rockchip
|
||||
|
||||
Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
|
||||
---
|
||||
.../bindings/rng/rockchip,rk3568-rng.yaml | 60 +++++++++++++++++++
|
||||
1 file changed, 60 insertions(+)
|
||||
create mode 100644 Documentation/devicetree/bindings/rng/rockchip,rk3568-rng.yaml
|
||||
|
||||
diff --git a/Documentation/devicetree/bindings/rng/rockchip,rk3568-rng.yaml b/Documentation/devicetree/bindings/rng/rockchip,rk3568-rng.yaml
|
||||
new file mode 100644
|
||||
index 000000000000..c2f5ef69cf07
|
||||
--- /dev/null
|
||||
+++ b/Documentation/devicetree/bindings/rng/rockchip,rk3568-rng.yaml
|
||||
@@ -0,0 +1,60 @@
|
||||
+# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
|
||||
+%YAML 1.2
|
||||
+---
|
||||
+$id: http://devicetree.org/schemas/rng/rockchip,rk3568-rng.yaml#
|
||||
+$schema: http://devicetree.org/meta-schemas/core.yaml#
|
||||
+
|
||||
+title: Rockchip TRNG
|
||||
+
|
||||
+description: True Random Number Generator for some Rockchip SoCs
|
||||
+
|
||||
+maintainers:
|
||||
+ - Aurelien Jarno <aurelien@aurel32.net>
|
||||
+
|
||||
+properties:
|
||||
+ compatible:
|
||||
+ enum:
|
||||
+ - rockchip,rk3568-rng
|
||||
+
|
||||
+ reg:
|
||||
+ maxItems: 1
|
||||
+
|
||||
+ clocks:
|
||||
+ items:
|
||||
+ - description: TRNG clock
|
||||
+ - description: TRNG AHB clock
|
||||
+
|
||||
+ clock-names:
|
||||
+ items:
|
||||
+ - const: trng_clk
|
||||
+ - const: trng_hclk
|
||||
+
|
||||
+ resets:
|
||||
+ maxItems: 1
|
||||
+
|
||||
+required:
|
||||
+ - compatible
|
||||
+ - reg
|
||||
+ - clocks
|
||||
+ - clock-names
|
||||
+ - resets
|
||||
+
|
||||
+additionalProperties: false
|
||||
+
|
||||
+examples:
|
||||
+ - |
|
||||
+ #include <dt-bindings/clock/rk3568-cru.h>
|
||||
+ bus {
|
||||
+ #address-cells = <2>;
|
||||
+ #size-cells = <2>;
|
||||
+
|
||||
+ rng@fe388000 {
|
||||
+ compatible = "rockchip,rk3568-rng";
|
||||
+ reg = <0x0 0xfe388000 0x0 0x4000>;
|
||||
+ clocks = <&cru CLK_TRNG_NS>, <&cru HCLK_TRNG_NS>;
|
||||
+ clock-names = "trng_clk", "trng_hclk";
|
||||
+ resets = <&cru SRST_TRNG_NS>;
|
||||
+ };
|
||||
+ };
|
||||
+
|
||||
+...
|
||||
--
|
||||
2.41.0
|
||||
|
@ -0,0 +1,27 @@
|
||||
From a053500cf43a31ee82a6e0f3d644ea36f5c77ffb Mon Sep 17 00:00:00 2001
|
||||
Message-Id: <a053500cf43a31ee82a6e0f3d644ea36f5c77ffb.1679932288.git.stefan@agner.ch>
|
||||
From: Stefan Agner <stefan@agner.ch>
|
||||
Date: Mon, 27 Mar 2023 17:48:34 +0200
|
||||
Subject: [PATCH] ndisc: support multiple gateways for a single network
|
||||
|
||||
---
|
||||
src/core/ndisc/nm-ndisc.c | 3 ++-
|
||||
1 file changed, 2 insertions(+), 1 deletion(-)
|
||||
|
||||
diff --git a/src/core/ndisc/nm-ndisc.c b/src/core/ndisc/nm-ndisc.c
|
||||
index 9a6038d406..67cdf5d99a 100644
|
||||
--- a/src/core/ndisc/nm-ndisc.c
|
||||
+++ b/src/core/ndisc/nm-ndisc.c
|
||||
@@ -654,7 +654,8 @@ nm_ndisc_add_route(NMNDisc *ndisc, const NMNDiscRoute *new_item, gint64 now_msec
|
||||
NMNDiscRoute *item = &g_array_index(rdata->routes, NMNDiscRoute, i);
|
||||
|
||||
if (IN6_ARE_ADDR_EQUAL(&item->network, &new_item->network)
|
||||
- && item->plen == new_item->plen) {
|
||||
+ && item->plen == new_item->plen
|
||||
+ && IN6_ARE_ADDR_EQUAL(&item->gateway, &new_item->gateway)) {
|
||||
if (new_item->expiry_msec <= now_msec) {
|
||||
g_array_remove_index(rdata->routes, i);
|
||||
return TRUE;
|
||||
--
|
||||
2.40.0
|
||||
|
@ -1,3 +1,4 @@
|
||||
[Journal]
|
||||
Storage=auto
|
||||
Compress=yes
|
||||
SystemMaxUse=500M
|
||||
|
@ -0,0 +1,2 @@
|
||||
[Unit]
|
||||
DefaultDependencies=yes
|
@ -1,4 +1,5 @@
|
||||
[Unit]
|
||||
After=network-online.target
|
||||
Wants=network-online.target
|
||||
|
||||
[Install]
|
||||
|
@ -1,5 +1,7 @@
|
||||
[Unit]
|
||||
DefaultDependencies=no
|
||||
Requires=dbus.socket systemd-journald.socket
|
||||
After=dbus.socket systemd-journald.socket
|
||||
|
||||
[Service]
|
||||
Environment="DBUS_SYSTEM_BUS_ADDRESS=unix:path=/run/dbus/system_bus_socket"
|
||||
|
@ -0,0 +1,2 @@
|
||||
[Unit]
|
||||
After=mnt-boot.mount
|
@ -0,0 +1,11 @@
|
||||
[Unit]
|
||||
Description=Configure multigenerational LRU
|
||||
ConditionPathExists=/sys/kernel/mm/lru_gen/enabled
|
||||
|
||||
[Service]
|
||||
Type=oneshot
|
||||
|
||||
ExecStart=/bin/sh -c "echo 1 > /sys/kernel/mm/lru_gen/min_ttl_ms"
|
||||
|
||||
[Install]
|
||||
WantedBy=basic.target
|
@ -2,17 +2,20 @@
|
||||
set -e
|
||||
|
||||
swapfile="/mnt/data/swapfile"
|
||||
swapsize="$(awk '/MemTotal/{ print $2 * 0.33 }' /proc/meminfo)"
|
||||
# Swap space in 4k blocks
|
||||
swapsize="$(awk '/MemTotal/{ print int($2 * 0.33 / 4) }' /proc/meminfo)"
|
||||
|
||||
|
||||
if [ ! -s "${swapfile}" ] || [ "$(stat "${swapfile}" -c '%s')" -lt $((swapsize * 1024)) ]; then
|
||||
if [ ! -s "${swapfile}" ] || [ "$(stat "${swapfile}" -c '%s')" -lt $((swapsize * 4096)) ]; then
|
||||
# Check free space (in 4k blocks)
|
||||
if [ "$(stat -f /mnt/data -c '%f')" -lt $((swapsize / 4)) ]; then
|
||||
if [ "$(stat -f /mnt/data -c '%f')" -lt "${swapsize}" ]; then
|
||||
echo "[WARNING] Not enough space to allocate swapfile"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
dd if=/dev/zero of="${swapfile}" bs=1k count="${swapsize}"
|
||||
echo "[INFO] Creating swapfile of size $((swapsize *4))k"
|
||||
umask 0077
|
||||
dd if=/dev/zero of="${swapfile}" bs=4k count="${swapsize}"
|
||||
fi
|
||||
|
||||
if ! swaplabel "${swapfile}" > /dev/null 2>&1; then
|
||||
|
@ -19,7 +19,19 @@ docker container exec \
|
||||
-ti hassio_cli \
|
||||
/usr/bin/cli.sh
|
||||
|
||||
# Jump to root login shell
|
||||
if [ $? -eq 10 ]; then
|
||||
case $? in
|
||||
10)
|
||||
# Jump to root login shell (login command)
|
||||
exec /bin/ash -l
|
||||
fi
|
||||
;;
|
||||
143)
|
||||
# 143 graceful termination (SIGTERM). Most likely a proper shutdown.
|
||||
# Just sleep for a while until actual systemd shutdown gets invoked.
|
||||
echo ""
|
||||
echo "Home Assistant CLI has been terminated."
|
||||
sleep 30
|
||||
;;
|
||||
*)
|
||||
echo "HA CLI failed with error code: $?"
|
||||
;;
|
||||
esac
|
||||
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
x
Reference in New Issue
Block a user