Skip to content
Snippets Groups Projects

Compare revisions

Changes are shown as if the source revision was being merged into the target revision. Learn more about comparing revisions.

Source

Select target project
No results found

Target

Select target project
  • gfx-ci/linux
  • tintou/linux
  • gallo/linux
  • sergi/linux
  • daniels/linux
  • MTCoster/gfx-ci-linux
  • Earthman100/linux
  • helen.fornazier/linux
  • eric/mesa-linux
  • vigneshraman/linux
  • narmstrong/linux-meson-drm-ci
  • blu/linux
  • daniels/linux-gfx-ci
  • Valentine/linux
  • bbrezillon/gfx-ci-linux
  • ashleysmithcol/linux
  • adalessandro/linux
  • hnez/linux
18 results
Show changes
Commits on Source (2816)
Showing
with 283 additions and 33 deletions
.templates_sha: &templates_sha 08fce249df1067b52423a6532fb66ad6bd96a79f
workflow:
rules:
- if: '$CI_COMMIT_TAG'
when: always
- when: never
variables:
TEMPLATES_SHA: *templates_sha
FDO_UPSTREAM_REPO: gfx-ci/ci-deb-repo
DEBIAN_DISTRO: bookworm
S3_HOST: s3.freedesktop.org
include:
- project: 'freedesktop/ci-templates'
ref: *templates_sha
file:
- '/templates/debian.yml'
stages:
- prepare
- build
.debian-image:
variables:
FDO_DISTRIBUTION_TAG: '2023-06-10.4'
FDO_DISTRIBUTION_VERSION: 'bookworm-slim'
debian-image:
stage: prepare
extends:
- .fdo.container-build@debian
- .debian-image
variables:
FDO_DISTRIBUTION_EXEC: 'pip3 install --break-system-packages git+http://gitlab.freedesktop.org/freedesktop/ci-templates@$TEMPLATES_SHA'
FDO_DISTRIBUTION_PACKAGES: 'git python3-pip ccache apt-utils curl build-essential linux-source bc kmod cpio flex libncurses5-dev libelf-dev libssl-dev dwarves bison crossbuild-essential-armhf crossbuild-essential-arm64 u-boot-tools zstd'
GIT_STRATEGY: none
FDO_DISTRIBUTION_EXEC: 'pip3 install --break-system-packages git+http://gitlab.freedesktop.org/freedesktop/ci-templates@08fce249df1067b52423a6532fb66ad6bd96a79f'
build-kernel:
stage: build
extends:
- .fdo.distribution-image@debian
- .debian-image
tags:
- packet.net
before_script:
- export PATH="/usr/lib/ccache:$PATH"
- export CCACHE_BASEDIR="$PWD"
- export CCACHE_DIR="$PWD/ccache"
- export CCACHE_COMPILERCHECK=content
- ccache --show-stats || true
after_script:
- export CCACHE_DIR="$PWD/ccache"
- ccache --show-stats
script:
- .gitlab-ci/build.sh
artifacts:
name: $CI_JOB_NAME
paths:
- .config
- defconfig
- kernels
- dtbs
- modules.tar.zst
expire_in: 9 months
cache:
key: $CI_JOB_NAME_SLUG
paths:
- ccache/
parallel:
matrix:
- DEBIAN_ARCH: amd64
KERNEL_ARCH: x86_64
- DEBIAN_ARCH: armhf
KERNEL_ARCH: arm
- DEBIAN_ARCH: arm64
KERNEL_ARCH: arm64
#!/usr/bin/env bash
set -ex
if [ -z "$KERNEL_ARCH" ] || [ -z "$S3_HOST" ]; then
exit 1
fi
# preparation
mkdir -p kernels modules dtbs
rm -f .config defconfig kernels/* modules/* dtbs/*
LOCALVERSION=$(git branch --show-current)
export LOCALVERSION
export MAKEFLAGS="-j${FDO_CI_CONCURRENT:-4}"
GIT_TAG=$(git describe --tags)
# FIXME: drop DEBIAN_ARCH
S3_PATH="${S3_HOST}/mesa-lava/${CI_PROJECT_PATH}/${GIT_TAG}/${DEBIAN_ARCH}"
if [ "${KERNEL_ARCH}" == "x86_64" ]; then
DEFCONFIG="arch/x86/configs/x86_64_defconfig"
KERNEL_IMAGE_NAME=( bzImage )
elif [ "${KERNEL_ARCH}" == "arm" ]; then
CROSS_COMPILE=arm-linux-gnueabihf-
DEFCONFIG="arch/arm/configs/multi_v7_defconfig"
KERNEL_IMAGE_NAME=( zImage )
DT_PATH="arch/arm/boot/dts"
DT=(
rk3288-veyron-jaq.dtb
sun8i-h3-libretech-all-h3-cc.dtb
imx6q-cubox-i.dtb
tegra124-jetson-tk1.dtb
)
elif [ "${KERNEL_ARCH}" == "arm64" ]; then
CROSS_COMPILE=aarch64-linux-gnu-
DEFCONFIG="arch/arm64/configs/defconfig"
KERNEL_IMAGE_NAME=( Image )
DT_PATH="arch/arm64/boot/dts"
DT=(
rockchip/rk3399-gru-kevin.dtb
amlogic/meson-g12b-a311d-khadas-vim3.dtb
amlogic/meson-gxl-s805x-libretech-ac.dtb
amlogic/meson-gxm-khadas-vim2.dtb
allwinner/sun50i-h6-pine-h64.dtb
freescale/imx8mq-nitrogen.dtb
mediatek/mt8192-asurada-spherion-r0.dtb
mediatek/mt8183-kukui-jacuzzi-juniper-sku16.dtb
nvidia/tegra210-p3450-0000.dtb
qcom/apq8016-sbc.dtb
qcom/apq8096-db820c.dtb
qcom/sc7180-trogdor-lazor-limozeen-nots-r5.dtb
qcom/sc7180-trogdor-kingoftown-r1.dtb
qcom/sdm845-cheza-r3.dtb
qcom/sm8350-hdk.dtb
)
else
exit 1
fi
make() {
command make ARCH="${KERNEL_ARCH}" CROSS_COMPILE="${CROSS_COMPILE}" "$@"
}
export ARCH="${KERNEL_ARCH}"
export CROSS_COMPILE="${CROSS_COMPILE}"
# defconfig
./scripts/kconfig/merge_config.sh ${DEFCONFIG} kernel/configs/mesa3d-ci_"${KERNEL_ARCH}".config
#build
make "${KERNEL_IMAGE_NAME[@]}"
for image in "${KERNEL_IMAGE_NAME[@]}"; do
cp -v "arch/${KERNEL_ARCH}/boot/${image}" kernels/
done
for dtb_file in "${DT[@]}"; do
make "$dtb_file"
cp -v "${DT_PATH}/${dtb_file}" dtbs/
done
# workarounds and specific stuff
if [[ ${KERNEL_ARCH} = "arm64" ]]; then
{ # Google's Cheza
make Image.lzma # Google's Cheza
mkimage \
-f auto \
-A arm \
-O linux \
-d arch/arm64/boot/Image.lzma \
-C lzma\
-b arch/arm64/boot/dts/qcom/sdm845-cheza-r3.dtb \
kernels/cheza-kernel
KERNEL_IMAGE_NAME+=( cheza-kernel )
}
{ # db410c
gzip -k kernels/Image
KERNEL_IMAGE_NAME+=( Image.gz )
}
fi
# modules
make modules
make INSTALL_MOD_PATH=modules modules_install
rm modules/lib/modules/*/{build,source}
tar --zstd -cvf modules.tar.zst -C modules .
rm modules -rf
# defconfig template
make savedefconfig
# upload
FILES_TO_UPLOAD=( modules.tar.zst kernels/* )
if [ "${KERNEL_ARCH}" != "x86_64" ]; then
FILES_TO_UPLOAD+=( dtbs/* )
fi
for f in "${FILES_TO_UPLOAD[@]}"; do
ci-fairy s3cp --token "${CI_JOB_JWT:?}" "$f" "https://${S3_PATH}/$(basename -a "$f")"
done
git clean --quiet -fdx -e 'ccache/' -e '.config' -e 'defconfig' -e 'modules.tar.zst' -e 'kernels/' -e 'dtbs/'
echo "GIT_TAG: ${GIT_TAG}"
......@@ -172,6 +172,8 @@ stable kernels.
+----------------+-----------------+-----------------+-----------------------------+
| NVIDIA | Carmel Core | N/A | NVIDIA_CARMEL_CNP_ERRATUM |
+----------------+-----------------+-----------------+-----------------------------+
| NVIDIA | T241 GICv3/4.x | T241-FABRIC-4 | N/A |
+----------------+-----------------+-----------------+-----------------------------+
+----------------+-----------------+-----------------+-----------------------------+
| Freescale/NXP | LS2080A/LS1043A | A-008585 | FSL_ERRATUM_A008585 |
+----------------+-----------------+-----------------+-----------------------------+
......
......@@ -32,7 +32,7 @@ properties:
maxItems: 1
iommus:
maxItems: 1
maxItems: 4
power-domains:
maxItems: 1
......
......@@ -82,6 +82,18 @@ properties:
Indicates if the DSI controller is driving a panel which needs
2 DSI links.
qcom,master-dsi:
type: boolean
description: |
Indicates if the DSI controller is the master DSI controller when
qcom,dual-dsi-mode enabled.
qcom,sync-dual-dsi:
type: boolean
description: |
Indicates if the DSI controller needs to sync the other DSI controller
with MIPI DCS commands when qcom,dual-dsi-mode enabled.
assigned-clocks:
minItems: 2
maxItems: 4
......
......@@ -86,7 +86,7 @@ patternProperties:
of the MAX chips to the GyroADC, while MISO line of each Maxim
ADC connects to a shared input pin of the GyroADC.
enum:
- adi,7476
- adi,ad7476
- fujitsu,mb88101a
- maxim,max1162
- maxim,max11100
......
......@@ -91,7 +91,6 @@ properties:
dependencies:
"riscv,event-to-mhpmevent": [ "riscv,event-to-mhpmcounters" ]
"riscv,event-to-mhpmcounters": [ "riscv,event-to-mhpmevent" ]
required:
- compatible
......
......@@ -70,6 +70,7 @@ properties:
dsr-gpios: true
rng-gpios: true
dcd-gpios: true
rs485-rts-active-high: true
rts-gpio: true
power-domains: true
clock-frequency: true
......
......@@ -68,7 +68,7 @@ properties:
- const: apb_pclk
dmas:
minItems: 2
maxItems: 2
dma-names:
items:
......
......@@ -63,15 +63,15 @@ properties:
- const: apll12_div2
- const: apll12_div3
- const: apll12_div9
- const: a1sys_hp_sel
- const: aud_intbus_sel
- const: audio_h_sel
- const: audio_local_bus_sel
- const: dptx_m_sel
- const: i2so1_m_sel
- const: i2so2_m_sel
- const: i2si1_m_sel
- const: i2si2_m_sel
- const: top_a1sys_hp
- const: top_aud_intbus
- const: top_audio_h
- const: top_audio_local_bus
- const: top_dptx
- const: top_i2so1
- const: top_i2so2
- const: top_i2si1
- const: top_i2si2
- const: adsp_audio_26m
mediatek,etdm-in1-cowork-source:
......@@ -193,15 +193,15 @@ examples:
"apll12_div2",
"apll12_div3",
"apll12_div9",
"a1sys_hp_sel",
"aud_intbus_sel",
"audio_h_sel",
"audio_local_bus_sel",
"dptx_m_sel",
"i2so1_m_sel",
"i2so2_m_sel",
"i2si1_m_sel",
"i2si2_m_sel",
"top_a1sys_hp",
"top_aud_intbus",
"top_audio_h",
"top_audio_local_bus",
"top_dptx",
"top_i2so1",
"top_i2so2",
"top_i2si1",
"top_i2si2",
"adsp_audio_26m";
};
......
......@@ -30,6 +30,7 @@ properties:
const: 0
clocks:
minItems: 3
maxItems: 5
clock-names:
......
......@@ -55,7 +55,9 @@ properties:
description: TDM TX current sense time slot.
'#sound-dai-cells':
const: 1
# The codec has a single DAI, the #sound-dai-cells=<1>; case is left in for backward
# compatibility but is deprecated.
enum: [0, 1]
required:
- compatible
......@@ -72,7 +74,7 @@ examples:
codec: codec@4c {
compatible = "ti,tas2562";
reg = <0x4c>;
#sound-dai-cells = <1>;
#sound-dai-cells = <0>;
interrupt-parent = <&gpio1>;
interrupts = <14>;
shutdown-gpios = <&gpio1 15 0>;
......
......@@ -57,7 +57,9 @@ properties:
- 1 # Falling edge
'#sound-dai-cells':
const: 1
# The codec has a single DAI, the #sound-dai-cells=<1>; case is left in for backward
# compatibility but is deprecated.
enum: [0, 1]
required:
- compatible
......@@ -74,7 +76,7 @@ examples:
codec: codec@41 {
compatible = "ti,tas2770";
reg = <0x41>;
#sound-dai-cells = <1>;
#sound-dai-cells = <0>;
interrupt-parent = <&gpio1>;
interrupts = <14>;
reset-gpio = <&gpio1 15 0>;
......
......@@ -50,7 +50,9 @@ properties:
description: TDM TX voltage sense time slot.
'#sound-dai-cells':
const: 1
# The codec has a single DAI, the #sound-dai-cells=<1>; case is left in for backward
# compatibility but is deprecated.
enum: [0, 1]
required:
- compatible
......@@ -67,7 +69,7 @@ examples:
codec: codec@38 {
compatible = "ti,tas2764";
reg = <0x38>;
#sound-dai-cells = <1>;
#sound-dai-cells = <0>;
interrupt-parent = <&gpio1>;
interrupts = <14>;
reset-gpios = <&gpio1 15 0>;
......
......@@ -64,7 +64,7 @@ properties:
description:
size of memory intended as internal memory for endpoints
buffers expressed in KB
$ref: /schemas/types.yaml#/definitions/uint32
$ref: /schemas/types.yaml#/definitions/uint16
cdns,phyrst-a-enable:
description: Enable resetting of PHY if Rx fail is detected
......
......@@ -270,7 +270,7 @@ properties:
description:
High-Speed PHY interface selection between UTMI+ and ULPI when the
DWC_USB3_HSPHY_INTERFACE has value 3.
$ref: /schemas/types.yaml#/definitions/uint8
$ref: /schemas/types.yaml#/definitions/string
enum: [utmi, ulpi]
snps,quirk-frame-length-adjustment:
......
......@@ -52,3 +52,22 @@ Build kernel with:
Optionally, build kernel with PAGE_TABLE_CHECK_ENFORCED in order to have page
table support without extra kernel parameter.
Implementation notes
====================
We specifically decided not to use VMA information in order to avoid relying on
MM states (except for limited "struct page" info). The page table check is a
separate from Linux-MM state machine that verifies that the user accessible
pages are not falsely shared.
PAGE_TABLE_CHECK depends on EXCLUSIVE_SYSTEM_RAM. The reason is that without
EXCLUSIVE_SYSTEM_RAM, users are allowed to map arbitrary physical memory
regions into the userspace via /dev/mem. At the same time, pages may change
their properties (e.g., from anonymous pages to named pages) while they are
still being mapped in the userspace, leading to "corruption" detected by the
page table check.
Even with EXCLUSIVE_SYSTEM_RAM, I/O pages may be still allowed to be mapped via
/dev/mem. However, these pages are always considered as named pages, so they
won't break the logic used in the page table check.
......@@ -1352,8 +1352,8 @@ ping_group_range - 2 INTEGERS
Restrict ICMP_PROTO datagram sockets to users in the group range.
The default is "1 0", meaning, that nobody (not even root) may
create ping sockets. Setting it to "100 100" would grant permissions
to the single group. "0 4294967295" would enable it for the world, "100
4294967295" would enable it for the users, but not daemons.
to the single group. "0 4294967294" would enable it for the world, "100
4294967294" would enable it for the users, but not daemons.
tcp_early_demux - BOOLEAN
Enable early demux for established TCP sockets.
......
......@@ -60,6 +60,7 @@ openssl & libcrypto 1.0.0 openssl version
bc 1.06.95 bc --version
Sphinx\ [#f1]_ 1.7 sphinx-build --version
cpio any cpio --version
gtags (optional) 6.6.5 gtags --version
====================== =============== ========================================
.. [#f1] Sphinx is needed only to build the Kernel documentation
......@@ -174,6 +175,12 @@ You will need openssl to build kernels 3.7 and higher if module signing is
enabled. You will also need openssl development packages to build kernels 4.3
and higher.
gtags / GNU GLOBAL (optional)
-----------------------------
The kernel build requires GNU GLOBAL version 6.6.5 or later to generate
tag files through ``make gtags``. This is due to its use of the gtags
``-C (--directory)`` flag.
System utilities
****************
......
# SPDX-License-Identifier: GPL-2.0
VERSION = 6
PATCHLEVEL = 3
SUBLEVEL = 0
SUBLEVEL = 13
EXTRAVERSION =
NAME = Hurr durr I'ma ninja sloth
......