mirror of
https://github.com/bolucat/Archive.git
synced 2026-04-22 16:07:49 +08:00
Update On Sun Mar 22 19:51:04 CET 2026
This commit is contained in:
@@ -1306,3 +1306,4 @@ Update On Wed Mar 18 20:13:21 CET 2026
|
||||
Update On Thu Mar 19 20:11:34 CET 2026
|
||||
Update On Fri Mar 20 20:03:22 CET 2026
|
||||
Update On Sat Mar 21 19:50:06 CET 2026
|
||||
Update On Sun Mar 22 19:50:55 CET 2026
|
||||
|
||||
@@ -64,6 +64,13 @@ func putMsgToCache(c dnsCache, q D.Question, msg *D.Msg) {
|
||||
return
|
||||
}
|
||||
|
||||
msg = msg.Copy() // never modify the original msg
|
||||
|
||||
// OPT RRs MUST NOT be cached, forwarded, or stored in or loaded from master files.
|
||||
msg.Extra = lo.Filter(msg.Extra, func(rr D.RR, index int) bool {
|
||||
return rr.Header().Rrtype != D.TypeOPT
|
||||
})
|
||||
|
||||
var ttl uint32
|
||||
if msg.Rcode == D.RcodeServerFailure {
|
||||
// [...] a resolver MAY cache a server failure response.
|
||||
@@ -76,13 +83,6 @@ func putMsgToCache(c dnsCache, q D.Question, msg *D.Msg) {
|
||||
return
|
||||
}
|
||||
|
||||
msg = msg.Copy() // never modify the original msg
|
||||
|
||||
// OPT RRs MUST NOT be cached, forwarded, or stored in or loaded from master files.
|
||||
msg.Extra = lo.Filter(msg.Extra, func(rr D.RR, index int) bool {
|
||||
return rr.Header().Rrtype != D.TypeOPT
|
||||
})
|
||||
|
||||
c.SetWithExpire(q.String(), msg, time.Now().Add(time.Duration(ttl)*time.Second))
|
||||
}
|
||||
|
||||
|
||||
Generated
+19
-19
@@ -379,7 +379,7 @@ dependencies = [
|
||||
"objc2-foundation 0.3.2",
|
||||
"parking_lot",
|
||||
"percent-encoding",
|
||||
"windows-sys 0.60.2",
|
||||
"windows-sys 0.52.0",
|
||||
"wl-clipboard-rs",
|
||||
"x11rb",
|
||||
]
|
||||
@@ -1692,7 +1692,7 @@ dependencies = [
|
||||
"windows-registry 0.5.3",
|
||||
"windows-sys 0.60.2",
|
||||
"winreg 0.55.0",
|
||||
"zip 8.3.0",
|
||||
"zip 8.3.1",
|
||||
"zip-extensions",
|
||||
]
|
||||
|
||||
@@ -1743,7 +1743,7 @@ version = "3.1.1"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "faf9468729b8cbcea668e36183cb69d317348c2e08e994829fb56ebfdfbaac34"
|
||||
dependencies = [
|
||||
"windows-sys 0.61.2",
|
||||
"windows-sys 0.48.0",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
@@ -2360,7 +2360,7 @@ dependencies = [
|
||||
"libc",
|
||||
"option-ext",
|
||||
"redox_users 0.5.2",
|
||||
"windows-sys 0.61.2",
|
||||
"windows-sys 0.59.0",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
@@ -2394,9 +2394,9 @@ dependencies = [
|
||||
|
||||
[[package]]
|
||||
name = "display-info"
|
||||
version = "0.5.7"
|
||||
version = "0.5.9"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "b35269e5d1f477f90f9f6c353943e3464466271369ac8499cc17b8dbb82289f3"
|
||||
checksum = "9e0aca670967c2528799e316f9f97913efcc034867614d55681dd41a1c2f7830"
|
||||
dependencies = [
|
||||
"fxhash",
|
||||
"log",
|
||||
@@ -2430,7 +2430,7 @@ version = "0.5.2"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "330c60081dcc4c72131f8eb70510f1ac07223e5d4163db481a04a0befcffa412"
|
||||
dependencies = [
|
||||
"libloading 0.8.8",
|
||||
"libloading 0.7.4",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
@@ -2889,7 +2889,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "778e2ac28f6c47af28e4907f13ffd1e1ddbd400980a9abd7c8df189bf578a5ad"
|
||||
dependencies = [
|
||||
"libc",
|
||||
"windows-sys 0.60.2",
|
||||
"windows-sys 0.52.0",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
@@ -4913,7 +4913,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "07033963ba89ebaf1584d767badaa2e8fcec21aedea6b8c0346d487d49c28667"
|
||||
dependencies = [
|
||||
"cfg-if",
|
||||
"windows-targets 0.53.3",
|
||||
"windows-targets 0.48.5",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
@@ -6323,7 +6323,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "7d8fae84b431384b68627d0f9b3b1245fcf9f46f6c0e3dc902e9dce64edd1967"
|
||||
dependencies = [
|
||||
"libc",
|
||||
"windows-sys 0.61.2",
|
||||
"windows-sys 0.45.0",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
@@ -7305,7 +7305,7 @@ dependencies = [
|
||||
"once_cell",
|
||||
"socket2",
|
||||
"tracing",
|
||||
"windows-sys 0.60.2",
|
||||
"windows-sys 0.52.0",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
@@ -7961,7 +7961,7 @@ dependencies = [
|
||||
"errno",
|
||||
"libc",
|
||||
"linux-raw-sys 0.12.1",
|
||||
"windows-sys 0.61.2",
|
||||
"windows-sys 0.52.0",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
@@ -8019,7 +8019,7 @@ dependencies = [
|
||||
"security-framework",
|
||||
"security-framework-sys",
|
||||
"webpki-root-certs",
|
||||
"windows-sys 0.61.2",
|
||||
"windows-sys 0.52.0",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
@@ -9709,7 +9709,7 @@ dependencies = [
|
||||
"getrandom 0.4.1",
|
||||
"once_cell",
|
||||
"rustix 1.1.4",
|
||||
"windows-sys 0.61.2",
|
||||
"windows-sys 0.52.0",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
@@ -11501,7 +11501,7 @@ version = "0.1.11"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "c2a7b1c03c876122aa43f3020e6c3c3ee5c05081c9a00739faf7503aeba10d22"
|
||||
dependencies = [
|
||||
"windows-sys 0.61.2",
|
||||
"windows-sys 0.48.0",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
@@ -12480,9 +12480,9 @@ dependencies = [
|
||||
|
||||
[[package]]
|
||||
name = "xcb"
|
||||
version = "1.6.0"
|
||||
version = "1.7.0"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "f07c123b796139bfe0603e654eaf08e132e52387ba95b252c78bad3640ba37ea"
|
||||
checksum = "ee4c580d8205abb0a5cf4eb7e927bd664e425b6c3263f9c5310583da96970cf6"
|
||||
dependencies = [
|
||||
"bitflags 1.3.2",
|
||||
"libc",
|
||||
@@ -12802,9 +12802,9 @@ dependencies = [
|
||||
|
||||
[[package]]
|
||||
name = "zip"
|
||||
version = "8.3.0"
|
||||
version = "8.3.1"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "4a243cfad17427fc077f529da5a95abe4e94fd2bfdb601611870a6557cc67657"
|
||||
checksum = "5c546feb4481b0fbafb4ef0d79b6204fc41c6f9884b1b73b1d73f82442fc0845"
|
||||
dependencies = [
|
||||
"aes",
|
||||
"bzip2",
|
||||
|
||||
@@ -11,7 +11,7 @@
|
||||
"build": "tsc"
|
||||
},
|
||||
"dependencies": {
|
||||
"@tanstack/react-query": "5.91.3",
|
||||
"@tanstack/react-query": "5.94.5",
|
||||
"@tauri-apps/api": "2.10.1",
|
||||
"ahooks": "3.9.6",
|
||||
"dayjs": "1.11.20",
|
||||
|
||||
@@ -43,7 +43,7 @@
|
||||
"country-emoji": "1.5.6",
|
||||
"dayjs": "1.11.20",
|
||||
"framer-motion": "12.38.0",
|
||||
"i18next": "25.9.0",
|
||||
"i18next": "25.10.4",
|
||||
"jotai": "2.18.1",
|
||||
"json-schema": "0.4.0",
|
||||
"material-react-table": "3.2.1",
|
||||
@@ -71,7 +71,7 @@
|
||||
"@emotion/react": "11.14.0",
|
||||
"@iconify/json": "2.2.453",
|
||||
"@monaco-editor/react": "4.7.0",
|
||||
"@tanstack/react-query": "5.91.3",
|
||||
"@tanstack/react-query": "5.94.5",
|
||||
"@tanstack/react-router": "1.167.5",
|
||||
"@tanstack/react-router-devtools": "1.166.9",
|
||||
"@tanstack/router-plugin": "1.166.14",
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
"manifest_version": 1,
|
||||
"latest": {
|
||||
"mihomo": "v1.19.21",
|
||||
"mihomo_alpha": "alpha-ae374f6",
|
||||
"mihomo_alpha": "alpha-4f93c93",
|
||||
"clash_rs": "v0.9.6",
|
||||
"clash_premium": "2023-09-05-gdcc8d87",
|
||||
"clash_rs_alpha": "0.9.6-alpha+sha.b17ba0a"
|
||||
@@ -69,5 +69,5 @@
|
||||
"linux-armv7hf": "clash-rs-armv7-unknown-linux-gnueabihf"
|
||||
}
|
||||
},
|
||||
"updated_at": "2026-03-20T22:22:49.611Z"
|
||||
"updated_at": "2026-03-21T22:22:12.076Z"
|
||||
}
|
||||
|
||||
Generated
+159
-153
@@ -128,8 +128,8 @@ importers:
|
||||
frontend/interface:
|
||||
dependencies:
|
||||
'@tanstack/react-query':
|
||||
specifier: 5.91.3
|
||||
version: 5.91.3(react@19.2.4)
|
||||
specifier: 5.94.5
|
||||
version: 5.94.5(react@19.2.4)
|
||||
'@tauri-apps/api':
|
||||
specifier: 2.10.1
|
||||
version: 2.10.1
|
||||
@@ -238,7 +238,7 @@ importers:
|
||||
version: 2.4.1(react-dom@19.2.4(react@19.2.4))(react@19.2.4)
|
||||
'@uiw/react-color':
|
||||
specifier: 2.9.6
|
||||
version: 2.9.6(@babel/runtime@7.28.6)(react-dom@19.2.4(react@19.2.4))(react@19.2.4)
|
||||
version: 2.9.6(@babel/runtime@7.29.2)(react-dom@19.2.4(react@19.2.4))(react@19.2.4)
|
||||
ahooks:
|
||||
specifier: 3.9.6
|
||||
version: 3.9.6(react-dom@19.2.4(react@19.2.4))(react@19.2.4)
|
||||
@@ -261,8 +261,8 @@ importers:
|
||||
specifier: 12.38.0
|
||||
version: 12.38.0(@emotion/is-prop-valid@1.3.0)(react-dom@19.2.4(react@19.2.4))(react@19.2.4)
|
||||
i18next:
|
||||
specifier: 25.9.0
|
||||
version: 25.9.0(typescript@5.9.3)
|
||||
specifier: 25.10.4
|
||||
version: 25.10.4(typescript@5.9.3)
|
||||
jotai:
|
||||
specifier: 2.18.1
|
||||
version: 2.18.1(@babel/core@7.29.0)(@babel/template@7.28.6)(@types/react@19.2.14)(react@19.2.4)
|
||||
@@ -301,7 +301,7 @@ importers:
|
||||
version: 8.2.0(e309558cb1df3652b39c2e76ceb9cee4)
|
||||
react-i18next:
|
||||
specifier: 15.7.4
|
||||
version: 15.7.4(i18next@25.9.0(typescript@5.9.3))(react-dom@19.2.4(react@19.2.4))(react@19.2.4)(typescript@5.9.3)
|
||||
version: 15.7.4(i18next@25.10.4(typescript@5.9.3))(react-dom@19.2.4(react@19.2.4))(react@19.2.4)(typescript@5.9.3)
|
||||
react-markdown:
|
||||
specifier: 10.1.0
|
||||
version: 10.1.0(@types/react@19.2.14)(react@19.2.4)
|
||||
@@ -340,8 +340,8 @@ importers:
|
||||
specifier: 4.7.0
|
||||
version: 4.7.0(monaco-editor@0.55.1)(react-dom@19.2.4(react@19.2.4))(react@19.2.4)
|
||||
'@tanstack/react-query':
|
||||
specifier: 5.91.3
|
||||
version: 5.91.3(react@19.2.4)
|
||||
specifier: 5.94.5
|
||||
version: 5.94.5(react@19.2.4)
|
||||
'@tanstack/react-router':
|
||||
specifier: 1.167.5
|
||||
version: 1.167.5(react-dom@19.2.4(react@19.2.4))(react@19.2.4)
|
||||
@@ -500,7 +500,7 @@ importers:
|
||||
version: 6.0.0(react@19.2.4)
|
||||
react-i18next:
|
||||
specifier: 15.7.4
|
||||
version: 15.7.4(i18next@25.9.0(typescript@5.9.3))(react-dom@19.2.4(react@19.2.4))(react@19.2.4)(typescript@5.9.3)
|
||||
version: 15.7.4(i18next@25.10.4(typescript@5.9.3))(react-dom@19.2.4(react@19.2.4))(react@19.2.4)(typescript@5.9.3)
|
||||
react-use:
|
||||
specifier: 17.6.0
|
||||
version: 17.6.0(react-dom@19.2.4(react@19.2.4))(react@19.2.4)
|
||||
@@ -1213,6 +1213,10 @@ packages:
|
||||
resolution: {integrity: sha512-05WQkdpL9COIMz4LjTxGpPNCdlpyimKppYNoJ5Di5EUObifl8t4tuLuUBBZEpoLYOmfvIWrsp9fCl0HoPRVTdA==}
|
||||
engines: {node: '>=6.9.0'}
|
||||
|
||||
'@babel/runtime@7.29.2':
|
||||
resolution: {integrity: sha512-JiDShH45zKHWyGe4ZNVRrCjBz8Nh9TMmZG1kh4QTK8hCBTWBi8Da+i7s1fJw7/lYpM4ccepSNfqzZ/QvABBi5g==}
|
||||
engines: {node: '>=6.9.0'}
|
||||
|
||||
'@babel/template@7.28.6':
|
||||
resolution: {integrity: sha512-YA6Ma2KsCdGb+WC6UpBVFJGXL58MDA6oyONbjyF/+5sBgxY/dwkhLogbMT2GXXyU84/IhRw/2D1Os1B/giz+BQ==}
|
||||
engines: {node: '>=6.9.0'}
|
||||
@@ -3979,11 +3983,11 @@ packages:
|
||||
resolution: {integrity: sha512-Wo1iKt2b9OT7d+YGhvEPD3DXvPv2etTusIMhMUoG7fbhmxcXCtIjJDEygy91Y2JFlwGyjqiBPRozme7UD8hoqg==}
|
||||
engines: {node: '>=12'}
|
||||
|
||||
'@tanstack/query-core@5.91.2':
|
||||
resolution: {integrity: sha512-Uz2pTgPC1mhqrrSGg18RKCWT/pkduAYtxbcyIyKBhw7dTWjXZIzqmpzO2lBkyWr4hlImQgpu1m1pei3UnkFRWw==}
|
||||
'@tanstack/query-core@5.94.5':
|
||||
resolution: {integrity: sha512-Vx1JJiBURW/wdNGP45afjrqn0LfxYwL7K/bSrQvNRtyLGF1bxQPgUXCpzscG29e+UeFOh9hz1KOVala0N+bZiA==}
|
||||
|
||||
'@tanstack/react-query@5.91.3':
|
||||
resolution: {integrity: sha512-D8jsCexxS5crZxAeiH6VlLHOUzmHOxeW5c11y8rZu0c34u/cy18hUKQXA/gn1Ila3ZIFzP+Pzv76YnliC0EtZQ==}
|
||||
'@tanstack/react-query@5.94.5':
|
||||
resolution: {integrity: sha512-1wmrxKFkor+q8l+ygdHmv0Sq5g84Q3p4xvuJ7AdSIAhQQ7udOt+ZSZ19g1Jea3mHqtlTslLGJsmC4vHFgP0P3A==}
|
||||
peerDependencies:
|
||||
react: ^18 || ^19
|
||||
|
||||
@@ -5797,8 +5801,8 @@ packages:
|
||||
hyphenate-style-name@1.1.0:
|
||||
resolution: {integrity: sha512-WDC/ui2VVRrz3jOVi+XtjqkDjiVjTtFaAGiW37k6b+ohyQ5wYDOGkvCZa8+H0nx3gyvv0+BST9xuOgIyGQ00gw==}
|
||||
|
||||
i18next@25.9.0:
|
||||
resolution: {integrity: sha512-mJ4rVRNWOTkqh5xnaGR6iMFT5vEw3Y2MTJhcjinR/7u8cRv6dAfC0ofuePh5fVPxoh395p6JdrJTStCcNW66gg==}
|
||||
i18next@25.10.4:
|
||||
resolution: {integrity: sha512-XsE/6eawy090meuFU0BTY9BtmWr1m9NSwLr0NK7/A04LA58wdAvDsi9WNOJ40Qb1E9NIPbvnVLZEN2fWDd3/3Q==}
|
||||
peerDependencies:
|
||||
typescript: ^5
|
||||
peerDependenciesMeta:
|
||||
@@ -8953,6 +8957,8 @@ snapshots:
|
||||
|
||||
'@babel/runtime@7.28.6': {}
|
||||
|
||||
'@babel/runtime@7.29.2': {}
|
||||
|
||||
'@babel/template@7.28.6':
|
||||
dependencies:
|
||||
'@babel/code-frame': 7.29.0
|
||||
@@ -9680,7 +9686,7 @@ snapshots:
|
||||
|
||||
'@mui/private-theming@7.3.2(@types/react@19.2.14)(react@19.2.4)':
|
||||
dependencies:
|
||||
'@babel/runtime': 7.28.6
|
||||
'@babel/runtime': 7.29.2
|
||||
'@mui/utils': 7.3.8(@types/react@19.2.14)(react@19.2.4)
|
||||
prop-types: 15.8.1
|
||||
react: 19.2.4
|
||||
@@ -9689,7 +9695,7 @@ snapshots:
|
||||
|
||||
'@mui/private-theming@7.3.9(@types/react@19.2.14)(react@19.2.4)':
|
||||
dependencies:
|
||||
'@babel/runtime': 7.28.6
|
||||
'@babel/runtime': 7.29.2
|
||||
'@mui/utils': 7.3.9(@types/react@19.2.14)(react@19.2.4)
|
||||
prop-types: 15.8.1
|
||||
react: 19.2.4
|
||||
@@ -9698,7 +9704,7 @@ snapshots:
|
||||
|
||||
'@mui/styled-engine@7.3.2(@emotion/react@11.14.0(@types/react@19.2.14)(react@19.2.4))(@emotion/styled@11.14.1(@emotion/react@11.14.0(@types/react@19.2.14)(react@19.2.4))(@types/react@19.2.14)(react@19.2.4))(react@19.2.4)':
|
||||
dependencies:
|
||||
'@babel/runtime': 7.28.6
|
||||
'@babel/runtime': 7.29.2
|
||||
'@emotion/cache': 11.14.0
|
||||
'@emotion/serialize': 1.3.3
|
||||
'@emotion/sheet': 1.4.0
|
||||
@@ -9711,7 +9717,7 @@ snapshots:
|
||||
|
||||
'@mui/styled-engine@7.3.9(@emotion/react@11.14.0(@types/react@19.2.14)(react@19.2.4))(@emotion/styled@11.14.1(@emotion/react@11.14.0(@types/react@19.2.14)(react@19.2.4))(@types/react@19.2.14)(react@19.2.4))(react@19.2.4)':
|
||||
dependencies:
|
||||
'@babel/runtime': 7.28.6
|
||||
'@babel/runtime': 7.29.2
|
||||
'@emotion/cache': 11.14.0
|
||||
'@emotion/serialize': 1.3.3
|
||||
'@emotion/sheet': 1.4.0
|
||||
@@ -9724,7 +9730,7 @@ snapshots:
|
||||
|
||||
'@mui/system@7.3.2(@emotion/react@11.14.0(@types/react@19.2.14)(react@19.2.4))(@emotion/styled@11.14.1(@emotion/react@11.14.0(@types/react@19.2.14)(react@19.2.4))(@types/react@19.2.14)(react@19.2.4))(@types/react@19.2.14)(react@19.2.4)':
|
||||
dependencies:
|
||||
'@babel/runtime': 7.28.6
|
||||
'@babel/runtime': 7.29.2
|
||||
'@mui/private-theming': 7.3.2(@types/react@19.2.14)(react@19.2.4)
|
||||
'@mui/styled-engine': 7.3.2(@emotion/react@11.14.0(@types/react@19.2.14)(react@19.2.4))(@emotion/styled@11.14.1(@emotion/react@11.14.0(@types/react@19.2.14)(react@19.2.4))(@types/react@19.2.14)(react@19.2.4))(react@19.2.4)
|
||||
'@mui/types': 7.4.11(@types/react@19.2.14)
|
||||
@@ -9740,7 +9746,7 @@ snapshots:
|
||||
|
||||
'@mui/system@7.3.9(@emotion/react@11.14.0(@types/react@19.2.14)(react@19.2.4))(@emotion/styled@11.14.1(@emotion/react@11.14.0(@types/react@19.2.14)(react@19.2.4))(@types/react@19.2.14)(react@19.2.4))(@types/react@19.2.14)(react@19.2.4)':
|
||||
dependencies:
|
||||
'@babel/runtime': 7.28.6
|
||||
'@babel/runtime': 7.29.2
|
||||
'@mui/private-theming': 7.3.9(@types/react@19.2.14)(react@19.2.4)
|
||||
'@mui/styled-engine': 7.3.9(@emotion/react@11.14.0(@types/react@19.2.14)(react@19.2.4))(@emotion/styled@11.14.1(@emotion/react@11.14.0(@types/react@19.2.14)(react@19.2.4))(@types/react@19.2.14)(react@19.2.4))(react@19.2.4)
|
||||
'@mui/types': 7.4.12(@types/react@19.2.14)
|
||||
@@ -9756,25 +9762,25 @@ snapshots:
|
||||
|
||||
'@mui/types@7.4.11(@types/react@19.2.14)':
|
||||
dependencies:
|
||||
'@babel/runtime': 7.28.6
|
||||
'@babel/runtime': 7.29.2
|
||||
optionalDependencies:
|
||||
'@types/react': 19.2.14
|
||||
|
||||
'@mui/types@7.4.12(@types/react@19.2.14)':
|
||||
dependencies:
|
||||
'@babel/runtime': 7.28.6
|
||||
'@babel/runtime': 7.29.2
|
||||
optionalDependencies:
|
||||
'@types/react': 19.2.14
|
||||
|
||||
'@mui/types@7.4.6(@types/react@19.2.14)':
|
||||
dependencies:
|
||||
'@babel/runtime': 7.28.6
|
||||
'@babel/runtime': 7.29.2
|
||||
optionalDependencies:
|
||||
'@types/react': 19.2.14
|
||||
|
||||
'@mui/utils@7.3.2(@types/react@19.2.14)(react@19.2.4)':
|
||||
dependencies:
|
||||
'@babel/runtime': 7.28.6
|
||||
'@babel/runtime': 7.29.2
|
||||
'@mui/types': 7.4.11(@types/react@19.2.14)
|
||||
'@types/prop-types': 15.7.15
|
||||
clsx: 2.1.1
|
||||
@@ -9786,7 +9792,7 @@ snapshots:
|
||||
|
||||
'@mui/utils@7.3.8(@types/react@19.2.14)(react@19.2.4)':
|
||||
dependencies:
|
||||
'@babel/runtime': 7.28.6
|
||||
'@babel/runtime': 7.29.2
|
||||
'@mui/types': 7.4.11(@types/react@19.2.14)
|
||||
'@types/prop-types': 15.7.15
|
||||
clsx: 2.1.1
|
||||
@@ -9798,7 +9804,7 @@ snapshots:
|
||||
|
||||
'@mui/utils@7.3.9(@types/react@19.2.14)(react@19.2.4)':
|
||||
dependencies:
|
||||
'@babel/runtime': 7.28.6
|
||||
'@babel/runtime': 7.29.2
|
||||
'@mui/types': 7.4.12(@types/react@19.2.14)
|
||||
'@types/prop-types': 15.7.15
|
||||
clsx: 2.1.1
|
||||
@@ -9830,7 +9836,7 @@ snapshots:
|
||||
|
||||
'@mui/x-internals@8.26.0(@types/react@19.2.14)(react@19.2.4)':
|
||||
dependencies:
|
||||
'@babel/runtime': 7.28.6
|
||||
'@babel/runtime': 7.29.2
|
||||
'@mui/utils': 7.3.8(@types/react@19.2.14)(react@19.2.4)
|
||||
react: 19.2.4
|
||||
reselect: 5.1.1
|
||||
@@ -11572,11 +11578,11 @@ snapshots:
|
||||
dependencies:
|
||||
remove-accents: 0.5.0
|
||||
|
||||
'@tanstack/query-core@5.91.2': {}
|
||||
'@tanstack/query-core@5.94.5': {}
|
||||
|
||||
'@tanstack/react-query@5.91.3(react@19.2.4)':
|
||||
'@tanstack/react-query@5.94.5(react@19.2.4)':
|
||||
dependencies:
|
||||
'@tanstack/query-core': 5.91.2
|
||||
'@tanstack/query-core': 5.94.5
|
||||
react: 19.2.4
|
||||
|
||||
'@tanstack/react-router-devtools@1.166.9(@tanstack/react-router@1.167.5(react-dom@19.2.4(react@19.2.4))(react@19.2.4))(@tanstack/router-core@1.167.5)(csstype@3.2.3)(react-dom@19.2.4(react@19.2.4))(react@19.2.4)':
|
||||
@@ -12056,203 +12062,203 @@ snapshots:
|
||||
react: 19.2.4
|
||||
react-dom: 19.2.4(react@19.2.4)
|
||||
|
||||
'@uiw/color-convert@2.9.6(@babel/runtime@7.28.6)':
|
||||
'@uiw/color-convert@2.9.6(@babel/runtime@7.29.2)':
|
||||
dependencies:
|
||||
'@babel/runtime': 7.28.6
|
||||
'@babel/runtime': 7.29.2
|
||||
|
||||
'@uiw/react-color-alpha@2.9.6(@babel/runtime@7.28.6)(react-dom@19.2.4(react@19.2.4))(react@19.2.4)':
|
||||
'@uiw/react-color-alpha@2.9.6(@babel/runtime@7.29.2)(react-dom@19.2.4(react@19.2.4))(react@19.2.4)':
|
||||
dependencies:
|
||||
'@babel/runtime': 7.28.6
|
||||
'@uiw/color-convert': 2.9.6(@babel/runtime@7.28.6)
|
||||
'@uiw/react-drag-event-interactive': 2.9.6(@babel/runtime@7.28.6)(react-dom@19.2.4(react@19.2.4))(react@19.2.4)
|
||||
'@babel/runtime': 7.29.2
|
||||
'@uiw/color-convert': 2.9.6(@babel/runtime@7.29.2)
|
||||
'@uiw/react-drag-event-interactive': 2.9.6(@babel/runtime@7.29.2)(react-dom@19.2.4(react@19.2.4))(react@19.2.4)
|
||||
react: 19.2.4
|
||||
react-dom: 19.2.4(react@19.2.4)
|
||||
|
||||
'@uiw/react-color-block@2.9.6(@babel/runtime@7.28.6)(react-dom@19.2.4(react@19.2.4))(react@19.2.4)':
|
||||
'@uiw/react-color-block@2.9.6(@babel/runtime@7.29.2)(react-dom@19.2.4(react@19.2.4))(react@19.2.4)':
|
||||
dependencies:
|
||||
'@babel/runtime': 7.28.6
|
||||
'@uiw/color-convert': 2.9.6(@babel/runtime@7.28.6)
|
||||
'@uiw/react-color-editable-input': 2.9.6(@babel/runtime@7.28.6)(react-dom@19.2.4(react@19.2.4))(react@19.2.4)
|
||||
'@uiw/react-color-swatch': 2.9.6(@babel/runtime@7.28.6)(react-dom@19.2.4(react@19.2.4))(react@19.2.4)
|
||||
'@babel/runtime': 7.29.2
|
||||
'@uiw/color-convert': 2.9.6(@babel/runtime@7.29.2)
|
||||
'@uiw/react-color-editable-input': 2.9.6(@babel/runtime@7.29.2)(react-dom@19.2.4(react@19.2.4))(react@19.2.4)
|
||||
'@uiw/react-color-swatch': 2.9.6(@babel/runtime@7.29.2)(react-dom@19.2.4(react@19.2.4))(react@19.2.4)
|
||||
react: 19.2.4
|
||||
react-dom: 19.2.4(react@19.2.4)
|
||||
|
||||
'@uiw/react-color-chrome@2.9.6(@babel/runtime@7.28.6)(react-dom@19.2.4(react@19.2.4))(react@19.2.4)':
|
||||
'@uiw/react-color-chrome@2.9.6(@babel/runtime@7.29.2)(react-dom@19.2.4(react@19.2.4))(react@19.2.4)':
|
||||
dependencies:
|
||||
'@babel/runtime': 7.28.6
|
||||
'@uiw/color-convert': 2.9.6(@babel/runtime@7.28.6)
|
||||
'@uiw/react-color-alpha': 2.9.6(@babel/runtime@7.28.6)(react-dom@19.2.4(react@19.2.4))(react@19.2.4)
|
||||
'@uiw/react-color-editable-input': 2.9.6(@babel/runtime@7.28.6)(react-dom@19.2.4(react@19.2.4))(react@19.2.4)
|
||||
'@uiw/react-color-editable-input-hsla': 2.9.6(@babel/runtime@7.28.6)(react-dom@19.2.4(react@19.2.4))(react@19.2.4)
|
||||
'@uiw/react-color-editable-input-rgba': 2.9.6(@babel/runtime@7.28.6)(react-dom@19.2.4(react@19.2.4))(react@19.2.4)
|
||||
'@uiw/react-color-github': 2.9.6(@babel/runtime@7.28.6)(react-dom@19.2.4(react@19.2.4))(react@19.2.4)
|
||||
'@uiw/react-color-hue': 2.9.6(@babel/runtime@7.28.6)(react-dom@19.2.4(react@19.2.4))(react@19.2.4)
|
||||
'@uiw/react-color-saturation': 2.9.6(@babel/runtime@7.28.6)(react-dom@19.2.4(react@19.2.4))(react@19.2.4)
|
||||
'@babel/runtime': 7.29.2
|
||||
'@uiw/color-convert': 2.9.6(@babel/runtime@7.29.2)
|
||||
'@uiw/react-color-alpha': 2.9.6(@babel/runtime@7.29.2)(react-dom@19.2.4(react@19.2.4))(react@19.2.4)
|
||||
'@uiw/react-color-editable-input': 2.9.6(@babel/runtime@7.29.2)(react-dom@19.2.4(react@19.2.4))(react@19.2.4)
|
||||
'@uiw/react-color-editable-input-hsla': 2.9.6(@babel/runtime@7.29.2)(react-dom@19.2.4(react@19.2.4))(react@19.2.4)
|
||||
'@uiw/react-color-editable-input-rgba': 2.9.6(@babel/runtime@7.29.2)(react-dom@19.2.4(react@19.2.4))(react@19.2.4)
|
||||
'@uiw/react-color-github': 2.9.6(@babel/runtime@7.29.2)(react-dom@19.2.4(react@19.2.4))(react@19.2.4)
|
||||
'@uiw/react-color-hue': 2.9.6(@babel/runtime@7.29.2)(react-dom@19.2.4(react@19.2.4))(react@19.2.4)
|
||||
'@uiw/react-color-saturation': 2.9.6(@babel/runtime@7.29.2)(react-dom@19.2.4(react@19.2.4))(react@19.2.4)
|
||||
react: 19.2.4
|
||||
react-dom: 19.2.4(react@19.2.4)
|
||||
|
||||
'@uiw/react-color-circle@2.9.6(@babel/runtime@7.28.6)(react-dom@19.2.4(react@19.2.4))(react@19.2.4)':
|
||||
'@uiw/react-color-circle@2.9.6(@babel/runtime@7.29.2)(react-dom@19.2.4(react@19.2.4))(react@19.2.4)':
|
||||
dependencies:
|
||||
'@babel/runtime': 7.28.6
|
||||
'@uiw/color-convert': 2.9.6(@babel/runtime@7.28.6)
|
||||
'@uiw/react-color-swatch': 2.9.6(@babel/runtime@7.28.6)(react-dom@19.2.4(react@19.2.4))(react@19.2.4)
|
||||
'@babel/runtime': 7.29.2
|
||||
'@uiw/color-convert': 2.9.6(@babel/runtime@7.29.2)
|
||||
'@uiw/react-color-swatch': 2.9.6(@babel/runtime@7.29.2)(react-dom@19.2.4(react@19.2.4))(react@19.2.4)
|
||||
react: 19.2.4
|
||||
react-dom: 19.2.4(react@19.2.4)
|
||||
|
||||
'@uiw/react-color-colorful@2.9.6(@babel/runtime@7.28.6)(react-dom@19.2.4(react@19.2.4))(react@19.2.4)':
|
||||
'@uiw/react-color-colorful@2.9.6(@babel/runtime@7.29.2)(react-dom@19.2.4(react@19.2.4))(react@19.2.4)':
|
||||
dependencies:
|
||||
'@babel/runtime': 7.28.6
|
||||
'@uiw/color-convert': 2.9.6(@babel/runtime@7.28.6)
|
||||
'@uiw/react-color-alpha': 2.9.6(@babel/runtime@7.28.6)(react-dom@19.2.4(react@19.2.4))(react@19.2.4)
|
||||
'@uiw/react-color-hue': 2.9.6(@babel/runtime@7.28.6)(react-dom@19.2.4(react@19.2.4))(react@19.2.4)
|
||||
'@uiw/react-color-saturation': 2.9.6(@babel/runtime@7.28.6)(react-dom@19.2.4(react@19.2.4))(react@19.2.4)
|
||||
'@babel/runtime': 7.29.2
|
||||
'@uiw/color-convert': 2.9.6(@babel/runtime@7.29.2)
|
||||
'@uiw/react-color-alpha': 2.9.6(@babel/runtime@7.29.2)(react-dom@19.2.4(react@19.2.4))(react@19.2.4)
|
||||
'@uiw/react-color-hue': 2.9.6(@babel/runtime@7.29.2)(react-dom@19.2.4(react@19.2.4))(react@19.2.4)
|
||||
'@uiw/react-color-saturation': 2.9.6(@babel/runtime@7.29.2)(react-dom@19.2.4(react@19.2.4))(react@19.2.4)
|
||||
react: 19.2.4
|
||||
react-dom: 19.2.4(react@19.2.4)
|
||||
|
||||
'@uiw/react-color-compact@2.9.6(@babel/runtime@7.28.6)(react-dom@19.2.4(react@19.2.4))(react@19.2.4)':
|
||||
'@uiw/react-color-compact@2.9.6(@babel/runtime@7.29.2)(react-dom@19.2.4(react@19.2.4))(react@19.2.4)':
|
||||
dependencies:
|
||||
'@babel/runtime': 7.28.6
|
||||
'@uiw/color-convert': 2.9.6(@babel/runtime@7.28.6)
|
||||
'@uiw/react-color-editable-input': 2.9.6(@babel/runtime@7.28.6)(react-dom@19.2.4(react@19.2.4))(react@19.2.4)
|
||||
'@uiw/react-color-editable-input-rgba': 2.9.6(@babel/runtime@7.28.6)(react-dom@19.2.4(react@19.2.4))(react@19.2.4)
|
||||
'@uiw/react-color-swatch': 2.9.6(@babel/runtime@7.28.6)(react-dom@19.2.4(react@19.2.4))(react@19.2.4)
|
||||
'@babel/runtime': 7.29.2
|
||||
'@uiw/color-convert': 2.9.6(@babel/runtime@7.29.2)
|
||||
'@uiw/react-color-editable-input': 2.9.6(@babel/runtime@7.29.2)(react-dom@19.2.4(react@19.2.4))(react@19.2.4)
|
||||
'@uiw/react-color-editable-input-rgba': 2.9.6(@babel/runtime@7.29.2)(react-dom@19.2.4(react@19.2.4))(react@19.2.4)
|
||||
'@uiw/react-color-swatch': 2.9.6(@babel/runtime@7.29.2)(react-dom@19.2.4(react@19.2.4))(react@19.2.4)
|
||||
react: 19.2.4
|
||||
react-dom: 19.2.4(react@19.2.4)
|
||||
|
||||
'@uiw/react-color-editable-input-hsla@2.9.6(@babel/runtime@7.28.6)(react-dom@19.2.4(react@19.2.4))(react@19.2.4)':
|
||||
'@uiw/react-color-editable-input-hsla@2.9.6(@babel/runtime@7.29.2)(react-dom@19.2.4(react@19.2.4))(react@19.2.4)':
|
||||
dependencies:
|
||||
'@babel/runtime': 7.28.6
|
||||
'@uiw/color-convert': 2.9.6(@babel/runtime@7.28.6)
|
||||
'@uiw/react-color-editable-input-rgba': 2.9.6(@babel/runtime@7.28.6)(react-dom@19.2.4(react@19.2.4))(react@19.2.4)
|
||||
'@babel/runtime': 7.29.2
|
||||
'@uiw/color-convert': 2.9.6(@babel/runtime@7.29.2)
|
||||
'@uiw/react-color-editable-input-rgba': 2.9.6(@babel/runtime@7.29.2)(react-dom@19.2.4(react@19.2.4))(react@19.2.4)
|
||||
react: 19.2.4
|
||||
react-dom: 19.2.4(react@19.2.4)
|
||||
|
||||
'@uiw/react-color-editable-input-rgba@2.9.6(@babel/runtime@7.28.6)(react-dom@19.2.4(react@19.2.4))(react@19.2.4)':
|
||||
'@uiw/react-color-editable-input-rgba@2.9.6(@babel/runtime@7.29.2)(react-dom@19.2.4(react@19.2.4))(react@19.2.4)':
|
||||
dependencies:
|
||||
'@babel/runtime': 7.28.6
|
||||
'@uiw/color-convert': 2.9.6(@babel/runtime@7.28.6)
|
||||
'@uiw/react-color-editable-input': 2.9.6(@babel/runtime@7.28.6)(react-dom@19.2.4(react@19.2.4))(react@19.2.4)
|
||||
'@babel/runtime': 7.29.2
|
||||
'@uiw/color-convert': 2.9.6(@babel/runtime@7.29.2)
|
||||
'@uiw/react-color-editable-input': 2.9.6(@babel/runtime@7.29.2)(react-dom@19.2.4(react@19.2.4))(react@19.2.4)
|
||||
react: 19.2.4
|
||||
react-dom: 19.2.4(react@19.2.4)
|
||||
|
||||
'@uiw/react-color-editable-input@2.9.6(@babel/runtime@7.28.6)(react-dom@19.2.4(react@19.2.4))(react@19.2.4)':
|
||||
'@uiw/react-color-editable-input@2.9.6(@babel/runtime@7.29.2)(react-dom@19.2.4(react@19.2.4))(react@19.2.4)':
|
||||
dependencies:
|
||||
'@babel/runtime': 7.28.6
|
||||
'@babel/runtime': 7.29.2
|
||||
react: 19.2.4
|
||||
react-dom: 19.2.4(react@19.2.4)
|
||||
|
||||
'@uiw/react-color-github@2.9.6(@babel/runtime@7.28.6)(react-dom@19.2.4(react@19.2.4))(react@19.2.4)':
|
||||
'@uiw/react-color-github@2.9.6(@babel/runtime@7.29.2)(react-dom@19.2.4(react@19.2.4))(react@19.2.4)':
|
||||
dependencies:
|
||||
'@babel/runtime': 7.28.6
|
||||
'@uiw/color-convert': 2.9.6(@babel/runtime@7.28.6)
|
||||
'@uiw/react-color-swatch': 2.9.6(@babel/runtime@7.28.6)(react-dom@19.2.4(react@19.2.4))(react@19.2.4)
|
||||
'@babel/runtime': 7.29.2
|
||||
'@uiw/color-convert': 2.9.6(@babel/runtime@7.29.2)
|
||||
'@uiw/react-color-swatch': 2.9.6(@babel/runtime@7.29.2)(react-dom@19.2.4(react@19.2.4))(react@19.2.4)
|
||||
react: 19.2.4
|
||||
react-dom: 19.2.4(react@19.2.4)
|
||||
|
||||
'@uiw/react-color-hue@2.9.6(@babel/runtime@7.28.6)(react-dom@19.2.4(react@19.2.4))(react@19.2.4)':
|
||||
'@uiw/react-color-hue@2.9.6(@babel/runtime@7.29.2)(react-dom@19.2.4(react@19.2.4))(react@19.2.4)':
|
||||
dependencies:
|
||||
'@babel/runtime': 7.28.6
|
||||
'@uiw/color-convert': 2.9.6(@babel/runtime@7.28.6)
|
||||
'@uiw/react-color-alpha': 2.9.6(@babel/runtime@7.28.6)(react-dom@19.2.4(react@19.2.4))(react@19.2.4)
|
||||
'@babel/runtime': 7.29.2
|
||||
'@uiw/color-convert': 2.9.6(@babel/runtime@7.29.2)
|
||||
'@uiw/react-color-alpha': 2.9.6(@babel/runtime@7.29.2)(react-dom@19.2.4(react@19.2.4))(react@19.2.4)
|
||||
react: 19.2.4
|
||||
react-dom: 19.2.4(react@19.2.4)
|
||||
|
||||
'@uiw/react-color-material@2.9.6(@babel/runtime@7.28.6)(react-dom@19.2.4(react@19.2.4))(react@19.2.4)':
|
||||
'@uiw/react-color-material@2.9.6(@babel/runtime@7.29.2)(react-dom@19.2.4(react@19.2.4))(react@19.2.4)':
|
||||
dependencies:
|
||||
'@babel/runtime': 7.28.6
|
||||
'@uiw/color-convert': 2.9.6(@babel/runtime@7.28.6)
|
||||
'@uiw/react-color-editable-input': 2.9.6(@babel/runtime@7.28.6)(react-dom@19.2.4(react@19.2.4))(react@19.2.4)
|
||||
'@uiw/react-color-editable-input-rgba': 2.9.6(@babel/runtime@7.28.6)(react-dom@19.2.4(react@19.2.4))(react@19.2.4)
|
||||
'@babel/runtime': 7.29.2
|
||||
'@uiw/color-convert': 2.9.6(@babel/runtime@7.29.2)
|
||||
'@uiw/react-color-editable-input': 2.9.6(@babel/runtime@7.29.2)(react-dom@19.2.4(react@19.2.4))(react@19.2.4)
|
||||
'@uiw/react-color-editable-input-rgba': 2.9.6(@babel/runtime@7.29.2)(react-dom@19.2.4(react@19.2.4))(react@19.2.4)
|
||||
react: 19.2.4
|
||||
react-dom: 19.2.4(react@19.2.4)
|
||||
|
||||
'@uiw/react-color-name@2.9.6(@babel/runtime@7.28.6)':
|
||||
'@uiw/react-color-name@2.9.6(@babel/runtime@7.29.2)':
|
||||
dependencies:
|
||||
'@babel/runtime': 7.28.6
|
||||
'@babel/runtime': 7.29.2
|
||||
colors-named: 1.0.4
|
||||
colors-named-hex: 1.0.3
|
||||
|
||||
'@uiw/react-color-saturation@2.9.6(@babel/runtime@7.28.6)(react-dom@19.2.4(react@19.2.4))(react@19.2.4)':
|
||||
'@uiw/react-color-saturation@2.9.6(@babel/runtime@7.29.2)(react-dom@19.2.4(react@19.2.4))(react@19.2.4)':
|
||||
dependencies:
|
||||
'@babel/runtime': 7.28.6
|
||||
'@uiw/color-convert': 2.9.6(@babel/runtime@7.28.6)
|
||||
'@uiw/react-drag-event-interactive': 2.9.6(@babel/runtime@7.28.6)(react-dom@19.2.4(react@19.2.4))(react@19.2.4)
|
||||
'@babel/runtime': 7.29.2
|
||||
'@uiw/color-convert': 2.9.6(@babel/runtime@7.29.2)
|
||||
'@uiw/react-drag-event-interactive': 2.9.6(@babel/runtime@7.29.2)(react-dom@19.2.4(react@19.2.4))(react@19.2.4)
|
||||
react: 19.2.4
|
||||
react-dom: 19.2.4(react@19.2.4)
|
||||
|
||||
'@uiw/react-color-shade-slider@2.9.6(@babel/runtime@7.28.6)(react-dom@19.2.4(react@19.2.4))(react@19.2.4)':
|
||||
'@uiw/react-color-shade-slider@2.9.6(@babel/runtime@7.29.2)(react-dom@19.2.4(react@19.2.4))(react@19.2.4)':
|
||||
dependencies:
|
||||
'@babel/runtime': 7.28.6
|
||||
'@uiw/color-convert': 2.9.6(@babel/runtime@7.28.6)
|
||||
'@uiw/react-color-alpha': 2.9.6(@babel/runtime@7.28.6)(react-dom@19.2.4(react@19.2.4))(react@19.2.4)
|
||||
'@babel/runtime': 7.29.2
|
||||
'@uiw/color-convert': 2.9.6(@babel/runtime@7.29.2)
|
||||
'@uiw/react-color-alpha': 2.9.6(@babel/runtime@7.29.2)(react-dom@19.2.4(react@19.2.4))(react@19.2.4)
|
||||
react: 19.2.4
|
||||
react-dom: 19.2.4(react@19.2.4)
|
||||
|
||||
'@uiw/react-color-sketch@2.9.6(@babel/runtime@7.28.6)(react-dom@19.2.4(react@19.2.4))(react@19.2.4)':
|
||||
'@uiw/react-color-sketch@2.9.6(@babel/runtime@7.29.2)(react-dom@19.2.4(react@19.2.4))(react@19.2.4)':
|
||||
dependencies:
|
||||
'@babel/runtime': 7.28.6
|
||||
'@uiw/color-convert': 2.9.6(@babel/runtime@7.28.6)
|
||||
'@uiw/react-color-alpha': 2.9.6(@babel/runtime@7.28.6)(react-dom@19.2.4(react@19.2.4))(react@19.2.4)
|
||||
'@uiw/react-color-editable-input': 2.9.6(@babel/runtime@7.28.6)(react-dom@19.2.4(react@19.2.4))(react@19.2.4)
|
||||
'@uiw/react-color-editable-input-rgba': 2.9.6(@babel/runtime@7.28.6)(react-dom@19.2.4(react@19.2.4))(react@19.2.4)
|
||||
'@uiw/react-color-hue': 2.9.6(@babel/runtime@7.28.6)(react-dom@19.2.4(react@19.2.4))(react@19.2.4)
|
||||
'@uiw/react-color-saturation': 2.9.6(@babel/runtime@7.28.6)(react-dom@19.2.4(react@19.2.4))(react@19.2.4)
|
||||
'@uiw/react-color-swatch': 2.9.6(@babel/runtime@7.28.6)(react-dom@19.2.4(react@19.2.4))(react@19.2.4)
|
||||
'@babel/runtime': 7.29.2
|
||||
'@uiw/color-convert': 2.9.6(@babel/runtime@7.29.2)
|
||||
'@uiw/react-color-alpha': 2.9.6(@babel/runtime@7.29.2)(react-dom@19.2.4(react@19.2.4))(react@19.2.4)
|
||||
'@uiw/react-color-editable-input': 2.9.6(@babel/runtime@7.29.2)(react-dom@19.2.4(react@19.2.4))(react@19.2.4)
|
||||
'@uiw/react-color-editable-input-rgba': 2.9.6(@babel/runtime@7.29.2)(react-dom@19.2.4(react@19.2.4))(react@19.2.4)
|
||||
'@uiw/react-color-hue': 2.9.6(@babel/runtime@7.29.2)(react-dom@19.2.4(react@19.2.4))(react@19.2.4)
|
||||
'@uiw/react-color-saturation': 2.9.6(@babel/runtime@7.29.2)(react-dom@19.2.4(react@19.2.4))(react@19.2.4)
|
||||
'@uiw/react-color-swatch': 2.9.6(@babel/runtime@7.29.2)(react-dom@19.2.4(react@19.2.4))(react@19.2.4)
|
||||
react: 19.2.4
|
||||
react-dom: 19.2.4(react@19.2.4)
|
||||
|
||||
'@uiw/react-color-slider@2.9.6(@babel/runtime@7.28.6)(react-dom@19.2.4(react@19.2.4))(react@19.2.4)':
|
||||
'@uiw/react-color-slider@2.9.6(@babel/runtime@7.29.2)(react-dom@19.2.4(react@19.2.4))(react@19.2.4)':
|
||||
dependencies:
|
||||
'@babel/runtime': 7.28.6
|
||||
'@uiw/color-convert': 2.9.6(@babel/runtime@7.28.6)
|
||||
'@uiw/react-color-alpha': 2.9.6(@babel/runtime@7.28.6)(react-dom@19.2.4(react@19.2.4))(react@19.2.4)
|
||||
'@babel/runtime': 7.29.2
|
||||
'@uiw/color-convert': 2.9.6(@babel/runtime@7.29.2)
|
||||
'@uiw/react-color-alpha': 2.9.6(@babel/runtime@7.29.2)(react-dom@19.2.4(react@19.2.4))(react@19.2.4)
|
||||
react: 19.2.4
|
||||
react-dom: 19.2.4(react@19.2.4)
|
||||
|
||||
'@uiw/react-color-swatch@2.9.6(@babel/runtime@7.28.6)(react-dom@19.2.4(react@19.2.4))(react@19.2.4)':
|
||||
'@uiw/react-color-swatch@2.9.6(@babel/runtime@7.29.2)(react-dom@19.2.4(react@19.2.4))(react@19.2.4)':
|
||||
dependencies:
|
||||
'@babel/runtime': 7.28.6
|
||||
'@uiw/color-convert': 2.9.6(@babel/runtime@7.28.6)
|
||||
'@babel/runtime': 7.29.2
|
||||
'@uiw/color-convert': 2.9.6(@babel/runtime@7.29.2)
|
||||
react: 19.2.4
|
||||
react-dom: 19.2.4(react@19.2.4)
|
||||
|
||||
'@uiw/react-color-wheel@2.9.6(@babel/runtime@7.28.6)(react-dom@19.2.4(react@19.2.4))(react@19.2.4)':
|
||||
'@uiw/react-color-wheel@2.9.6(@babel/runtime@7.29.2)(react-dom@19.2.4(react@19.2.4))(react@19.2.4)':
|
||||
dependencies:
|
||||
'@babel/runtime': 7.28.6
|
||||
'@uiw/color-convert': 2.9.6(@babel/runtime@7.28.6)
|
||||
'@uiw/react-drag-event-interactive': 2.9.6(@babel/runtime@7.28.6)(react-dom@19.2.4(react@19.2.4))(react@19.2.4)
|
||||
'@babel/runtime': 7.29.2
|
||||
'@uiw/color-convert': 2.9.6(@babel/runtime@7.29.2)
|
||||
'@uiw/react-drag-event-interactive': 2.9.6(@babel/runtime@7.29.2)(react-dom@19.2.4(react@19.2.4))(react@19.2.4)
|
||||
react: 19.2.4
|
||||
react-dom: 19.2.4(react@19.2.4)
|
||||
|
||||
'@uiw/react-color@2.9.6(@babel/runtime@7.28.6)(react-dom@19.2.4(react@19.2.4))(react@19.2.4)':
|
||||
'@uiw/react-color@2.9.6(@babel/runtime@7.29.2)(react-dom@19.2.4(react@19.2.4))(react@19.2.4)':
|
||||
dependencies:
|
||||
'@babel/runtime': 7.28.6
|
||||
'@uiw/color-convert': 2.9.6(@babel/runtime@7.28.6)
|
||||
'@uiw/react-color-alpha': 2.9.6(@babel/runtime@7.28.6)(react-dom@19.2.4(react@19.2.4))(react@19.2.4)
|
||||
'@uiw/react-color-block': 2.9.6(@babel/runtime@7.28.6)(react-dom@19.2.4(react@19.2.4))(react@19.2.4)
|
||||
'@uiw/react-color-chrome': 2.9.6(@babel/runtime@7.28.6)(react-dom@19.2.4(react@19.2.4))(react@19.2.4)
|
||||
'@uiw/react-color-circle': 2.9.6(@babel/runtime@7.28.6)(react-dom@19.2.4(react@19.2.4))(react@19.2.4)
|
||||
'@uiw/react-color-colorful': 2.9.6(@babel/runtime@7.28.6)(react-dom@19.2.4(react@19.2.4))(react@19.2.4)
|
||||
'@uiw/react-color-compact': 2.9.6(@babel/runtime@7.28.6)(react-dom@19.2.4(react@19.2.4))(react@19.2.4)
|
||||
'@uiw/react-color-editable-input': 2.9.6(@babel/runtime@7.28.6)(react-dom@19.2.4(react@19.2.4))(react@19.2.4)
|
||||
'@uiw/react-color-editable-input-hsla': 2.9.6(@babel/runtime@7.28.6)(react-dom@19.2.4(react@19.2.4))(react@19.2.4)
|
||||
'@uiw/react-color-editable-input-rgba': 2.9.6(@babel/runtime@7.28.6)(react-dom@19.2.4(react@19.2.4))(react@19.2.4)
|
||||
'@uiw/react-color-github': 2.9.6(@babel/runtime@7.28.6)(react-dom@19.2.4(react@19.2.4))(react@19.2.4)
|
||||
'@uiw/react-color-hue': 2.9.6(@babel/runtime@7.28.6)(react-dom@19.2.4(react@19.2.4))(react@19.2.4)
|
||||
'@uiw/react-color-material': 2.9.6(@babel/runtime@7.28.6)(react-dom@19.2.4(react@19.2.4))(react@19.2.4)
|
||||
'@uiw/react-color-name': 2.9.6(@babel/runtime@7.28.6)
|
||||
'@uiw/react-color-saturation': 2.9.6(@babel/runtime@7.28.6)(react-dom@19.2.4(react@19.2.4))(react@19.2.4)
|
||||
'@uiw/react-color-shade-slider': 2.9.6(@babel/runtime@7.28.6)(react-dom@19.2.4(react@19.2.4))(react@19.2.4)
|
||||
'@uiw/react-color-sketch': 2.9.6(@babel/runtime@7.28.6)(react-dom@19.2.4(react@19.2.4))(react@19.2.4)
|
||||
'@uiw/react-color-slider': 2.9.6(@babel/runtime@7.28.6)(react-dom@19.2.4(react@19.2.4))(react@19.2.4)
|
||||
'@uiw/react-color-swatch': 2.9.6(@babel/runtime@7.28.6)(react-dom@19.2.4(react@19.2.4))(react@19.2.4)
|
||||
'@uiw/react-color-wheel': 2.9.6(@babel/runtime@7.28.6)(react-dom@19.2.4(react@19.2.4))(react@19.2.4)
|
||||
'@babel/runtime': 7.29.2
|
||||
'@uiw/color-convert': 2.9.6(@babel/runtime@7.29.2)
|
||||
'@uiw/react-color-alpha': 2.9.6(@babel/runtime@7.29.2)(react-dom@19.2.4(react@19.2.4))(react@19.2.4)
|
||||
'@uiw/react-color-block': 2.9.6(@babel/runtime@7.29.2)(react-dom@19.2.4(react@19.2.4))(react@19.2.4)
|
||||
'@uiw/react-color-chrome': 2.9.6(@babel/runtime@7.29.2)(react-dom@19.2.4(react@19.2.4))(react@19.2.4)
|
||||
'@uiw/react-color-circle': 2.9.6(@babel/runtime@7.29.2)(react-dom@19.2.4(react@19.2.4))(react@19.2.4)
|
||||
'@uiw/react-color-colorful': 2.9.6(@babel/runtime@7.29.2)(react-dom@19.2.4(react@19.2.4))(react@19.2.4)
|
||||
'@uiw/react-color-compact': 2.9.6(@babel/runtime@7.29.2)(react-dom@19.2.4(react@19.2.4))(react@19.2.4)
|
||||
'@uiw/react-color-editable-input': 2.9.6(@babel/runtime@7.29.2)(react-dom@19.2.4(react@19.2.4))(react@19.2.4)
|
||||
'@uiw/react-color-editable-input-hsla': 2.9.6(@babel/runtime@7.29.2)(react-dom@19.2.4(react@19.2.4))(react@19.2.4)
|
||||
'@uiw/react-color-editable-input-rgba': 2.9.6(@babel/runtime@7.29.2)(react-dom@19.2.4(react@19.2.4))(react@19.2.4)
|
||||
'@uiw/react-color-github': 2.9.6(@babel/runtime@7.29.2)(react-dom@19.2.4(react@19.2.4))(react@19.2.4)
|
||||
'@uiw/react-color-hue': 2.9.6(@babel/runtime@7.29.2)(react-dom@19.2.4(react@19.2.4))(react@19.2.4)
|
||||
'@uiw/react-color-material': 2.9.6(@babel/runtime@7.29.2)(react-dom@19.2.4(react@19.2.4))(react@19.2.4)
|
||||
'@uiw/react-color-name': 2.9.6(@babel/runtime@7.29.2)
|
||||
'@uiw/react-color-saturation': 2.9.6(@babel/runtime@7.29.2)(react-dom@19.2.4(react@19.2.4))(react@19.2.4)
|
||||
'@uiw/react-color-shade-slider': 2.9.6(@babel/runtime@7.29.2)(react-dom@19.2.4(react@19.2.4))(react@19.2.4)
|
||||
'@uiw/react-color-sketch': 2.9.6(@babel/runtime@7.29.2)(react-dom@19.2.4(react@19.2.4))(react@19.2.4)
|
||||
'@uiw/react-color-slider': 2.9.6(@babel/runtime@7.29.2)(react-dom@19.2.4(react@19.2.4))(react@19.2.4)
|
||||
'@uiw/react-color-swatch': 2.9.6(@babel/runtime@7.29.2)(react-dom@19.2.4(react@19.2.4))(react@19.2.4)
|
||||
'@uiw/react-color-wheel': 2.9.6(@babel/runtime@7.29.2)(react-dom@19.2.4(react@19.2.4))(react@19.2.4)
|
||||
react: 19.2.4
|
||||
react-dom: 19.2.4(react@19.2.4)
|
||||
|
||||
'@uiw/react-drag-event-interactive@2.9.6(@babel/runtime@7.28.6)(react-dom@19.2.4(react@19.2.4))(react@19.2.4)':
|
||||
'@uiw/react-drag-event-interactive@2.9.6(@babel/runtime@7.29.2)(react-dom@19.2.4(react@19.2.4))(react@19.2.4)':
|
||||
dependencies:
|
||||
'@babel/runtime': 7.28.6
|
||||
'@babel/runtime': 7.29.2
|
||||
react: 19.2.4
|
||||
react-dom: 19.2.4(react@19.2.4)
|
||||
|
||||
@@ -12474,7 +12480,7 @@ snapshots:
|
||||
|
||||
babel-plugin-macros@3.1.0:
|
||||
dependencies:
|
||||
'@babel/runtime': 7.28.6
|
||||
'@babel/runtime': 7.29.2
|
||||
cosmiconfig: 7.1.0
|
||||
resolve: 1.22.10
|
||||
|
||||
@@ -13052,7 +13058,7 @@ snapshots:
|
||||
|
||||
dom-helpers@5.2.1:
|
||||
dependencies:
|
||||
'@babel/runtime': 7.28.6
|
||||
'@babel/runtime': 7.29.2
|
||||
csstype: 3.2.3
|
||||
|
||||
dom-serializer@1.4.1:
|
||||
@@ -13517,9 +13523,9 @@ snapshots:
|
||||
|
||||
hyphenate-style-name@1.1.0: {}
|
||||
|
||||
i18next@25.9.0(typescript@5.9.3):
|
||||
i18next@25.10.4(typescript@5.9.3):
|
||||
dependencies:
|
||||
'@babel/runtime': 7.28.6
|
||||
'@babel/runtime': 7.29.2
|
||||
optionalDependencies:
|
||||
typescript: 5.9.3
|
||||
|
||||
@@ -14773,11 +14779,11 @@ snapshots:
|
||||
dependencies:
|
||||
react: 19.2.4
|
||||
|
||||
react-i18next@15.7.4(i18next@25.9.0(typescript@5.9.3))(react-dom@19.2.4(react@19.2.4))(react@19.2.4)(typescript@5.9.3):
|
||||
react-i18next@15.7.4(i18next@25.10.4(typescript@5.9.3))(react-dom@19.2.4(react@19.2.4))(react@19.2.4)(typescript@5.9.3):
|
||||
dependencies:
|
||||
'@babel/runtime': 7.28.3
|
||||
html-parse-stringify: 3.0.1
|
||||
i18next: 25.9.0(typescript@5.9.3)
|
||||
i18next: 25.10.4(typescript@5.9.3)
|
||||
react: 19.2.4
|
||||
optionalDependencies:
|
||||
react-dom: 19.2.4(react@19.2.4)
|
||||
@@ -14842,7 +14848,7 @@ snapshots:
|
||||
|
||||
react-transition-group@4.4.5(react-dom@19.2.4(react@19.2.4))(react@19.2.4):
|
||||
dependencies:
|
||||
'@babel/runtime': 7.28.6
|
||||
'@babel/runtime': 7.29.2
|
||||
dom-helpers: 5.2.1
|
||||
loose-envify: 1.4.0
|
||||
prop-types: 15.8.1
|
||||
@@ -15030,7 +15036,7 @@ snapshots:
|
||||
|
||||
rtl-css-js@1.16.1:
|
||||
dependencies:
|
||||
'@babel/runtime': 7.28.6
|
||||
'@babel/runtime': 7.29.2
|
||||
|
||||
run-parallel@1.2.0:
|
||||
dependencies:
|
||||
|
||||
@@ -1,2 +1,2 @@
|
||||
LINUX_VERSION-5.10 = .251
|
||||
LINUX_KERNEL_HASH-5.10.251 = e6857625fee3b587b0279b445adc3940a5c40723385fa1055ac7af16ff4b4c01
|
||||
LINUX_VERSION-5.10 = .252
|
||||
LINUX_KERNEL_HASH-5.10.252 = 34b3fbe2c9eeb767fc7eea4b9516e0dd44b79401ceb13e41713096b8eb270afb
|
||||
|
||||
@@ -1,2 +1,2 @@
|
||||
LINUX_VERSION-5.15 = .201
|
||||
LINUX_KERNEL_HASH-5.15.201 = 4f2afffbeddaad6b8527d41a3e3a82646d3cf5dfd0acbb6c4e8a99fc70461b96
|
||||
LINUX_VERSION-5.15 = .202
|
||||
LINUX_KERNEL_HASH-5.15.202 = 0bc1bdf74957e276793691865ffb71505809706d9243a42e9704aad0f128cdd4
|
||||
|
||||
@@ -1,2 +1,2 @@
|
||||
LINUX_VERSION-6.1 = .164
|
||||
LINUX_KERNEL_HASH-6.1.164 = 33bf087f7bbf7f626873dd7d955eb44182a93695db41f5f89a6bd3d233a39d1c
|
||||
LINUX_VERSION-6.1 = .166
|
||||
LINUX_KERNEL_HASH-6.1.166 = 818dfc742158d18f70a6abccd77b7e4366cb7f26a88687f94dae392a9f089449
|
||||
|
||||
@@ -1,2 +1,2 @@
|
||||
LINUX_VERSION-6.12 = .74
|
||||
LINUX_KERNEL_HASH-6.12.74 = 3b56eeb1dc9a437f189ca56b823be3769994f59a4ea0895b08ec0d20acaca13e
|
||||
LINUX_VERSION-6.12 = .77
|
||||
LINUX_KERNEL_HASH-6.12.77 = 358836ebe5caef41e7ae9492e7fbcdf5be6e53ee43c99752aebda81e1b2cff67
|
||||
|
||||
@@ -1,2 +1,2 @@
|
||||
LINUX_VERSION-6.6 = .127
|
||||
LINUX_KERNEL_HASH-6.6.127 = a7cd9c97b4f0b31cc030bcdc60abe5434fffb2556e293f7438ce7909dff8c9fe
|
||||
LINUX_VERSION-6.6 = .129
|
||||
LINUX_KERNEL_HASH-6.6.129 = caa08f0122224fbbfab177e2a37cc2a94a0046bd2e7e87f03f8913f2b812448a
|
||||
|
||||
+1
-1
@@ -11,7 +11,7 @@ This reverts commit 83b2a8fe43bda0c11981ad6afa5dd0104d78be28.
|
||||
|
||||
--- a/drivers/spi/spidev.c
|
||||
+++ b/drivers/spi/spidev.c
|
||||
@@ -428,7 +428,7 @@ spidev_ioctl(struct file *filp, unsigned
|
||||
@@ -415,7 +415,7 @@ spidev_ioctl(struct file *filp, unsigned
|
||||
}
|
||||
|
||||
if (ctlr->use_gpio_descriptors && spi_get_csgpiod(spi, 0))
|
||||
|
||||
+1
-1
@@ -13,7 +13,7 @@ Signed-off-by: Phil Elwell <phil@raspberrypi.org>
|
||||
|
||||
--- a/drivers/spi/spidev.c
|
||||
+++ b/drivers/spi/spidev.c
|
||||
@@ -721,7 +721,7 @@ MODULE_DEVICE_TABLE(spi, spidev_spi_ids)
|
||||
@@ -703,7 +703,7 @@ MODULE_DEVICE_TABLE(spi, spidev_spi_ids)
|
||||
*/
|
||||
static int spidev_of_check(struct device *dev)
|
||||
{
|
||||
|
||||
+1
-1
@@ -86,7 +86,7 @@ Signed-off-by: Phil Elwell <phil@raspberrypi.com>
|
||||
|
||||
--- a/arch/arm/include/asm/string.h
|
||||
+++ b/arch/arm/include/asm/string.h
|
||||
@@ -65,4 +65,9 @@ static inline void *memset64(uint64_t *p
|
||||
@@ -72,4 +72,9 @@ static inline void *memset64(uint64_t *p
|
||||
|
||||
#endif
|
||||
|
||||
|
||||
+3
-3
@@ -19,10 +19,10 @@ Signed-off-by: Charles Mirabile <cmirabil@redhat.com>
|
||||
|
||||
--- a/drivers/mfd/simple-mfd-i2c.c
|
||||
+++ b/drivers/mfd/simple-mfd-i2c.c
|
||||
@@ -88,6 +88,7 @@ static const struct of_device_id simple_
|
||||
@@ -119,6 +119,7 @@ static const struct of_device_id simple_
|
||||
{ .compatible = "maxim,max77705-battery", .data = &maxim_mon_max77705},
|
||||
{ .compatible = "silergy,sy7636a", .data = &silergy_sy7636a},
|
||||
{ .compatible = "maxim,max5970", .data = &maxim_max5970},
|
||||
{ .compatible = "maxim,max5978", .data = &maxim_max5970},
|
||||
{ .compatible = "spacemit,p1", .data = &spacemit_p1, },
|
||||
+ { .compatible = "raspberrypi,sensehat" },
|
||||
{}
|
||||
};
|
||||
|
||||
+1
-1
@@ -18626,7 +18626,7 @@ Signed-off-by: j-schambacher <joerg@hifiberry.com>
|
||||
* For devices with more than one control interface, we assume the
|
||||
--- a/sound/usb/quirks.c
|
||||
+++ b/sound/usb/quirks.c
|
||||
@@ -2385,6 +2385,8 @@ static const struct usb_audio_quirk_flag
|
||||
@@ -2395,6 +2395,8 @@ static const struct usb_audio_quirk_flag
|
||||
QUIRK_FLAG_ALIGN_TRANSFER),
|
||||
DEVICE_FLG(0x534d, 0x2109, /* MacroSilicon MS2109 */
|
||||
QUIRK_FLAG_ALIGN_TRANSFER),
|
||||
|
||||
+1
-1
@@ -50,7 +50,7 @@ Signed-off-by: Phil Elwell <phil@raspberrypi.com>
|
||||
default y if (ARCH_BRCMSTB || BMIPS_GENERIC)
|
||||
--- a/drivers/gpio/Makefile
|
||||
+++ b/drivers/gpio/Makefile
|
||||
@@ -39,6 +39,7 @@ obj-$(CONFIG_GPIO_ASPEED_SGPIO) += gpio
|
||||
@@ -40,6 +40,7 @@ obj-$(CONFIG_GPIO_ASPEED_SGPIO) += gpio
|
||||
obj-$(CONFIG_GPIO_ATH79) += gpio-ath79.o
|
||||
obj-$(CONFIG_GPIO_BCM_KONA) += gpio-bcm-kona.o
|
||||
obj-$(CONFIG_GPIO_BCM_XGS_IPROC) += gpio-xgs-iproc.o
|
||||
|
||||
+2
-2
@@ -25,7 +25,7 @@ Signed-off-by: Jonathan Bell <jonathan@raspberrypi.org>
|
||||
module_param_named(mousepoll, hid_mousepoll_interval, uint, 0644);
|
||||
MODULE_PARM_DESC(mousepoll, "Polling interval of mice");
|
||||
|
||||
@@ -1117,7 +1117,9 @@ static int usbhid_start(struct hid_devic
|
||||
@@ -1132,7 +1132,9 @@ static int usbhid_start(struct hid_devic
|
||||
*/
|
||||
switch (hid->collection->usage) {
|
||||
case HID_GD_MOUSE:
|
||||
@@ -36,7 +36,7 @@ Signed-off-by: Jonathan Bell <jonathan@raspberrypi.org>
|
||||
interval = hid_mousepoll_interval;
|
||||
break;
|
||||
case HID_GD_JOYSTICK:
|
||||
@@ -1129,6 +1131,7 @@ static int usbhid_start(struct hid_devic
|
||||
@@ -1144,6 +1146,7 @@ static int usbhid_start(struct hid_devic
|
||||
interval = hid_kbpoll_interval;
|
||||
break;
|
||||
}
|
||||
|
||||
+1
-1
@@ -37,7 +37,7 @@ Signed-off-by: Dave Stevenson <dave.stevenson@raspberrypi.org>
|
||||
static int lan78xx_read_reg(struct lan78xx_net *dev, u32 index, u32 *data)
|
||||
{
|
||||
u32 *buf;
|
||||
@@ -3464,8 +3473,14 @@ static int lan78xx_bind(struct lan78xx_n
|
||||
@@ -3462,8 +3471,14 @@ static int lan78xx_bind(struct lan78xx_n
|
||||
if (DEFAULT_RX_CSUM_ENABLE)
|
||||
dev->net->features |= NETIF_F_RXCSUM;
|
||||
|
||||
|
||||
+1
-1
@@ -28,7 +28,7 @@ See: https://github.com/raspberrypi/linux/issues/2447
|
||||
static int lan78xx_read_reg(struct lan78xx_net *dev, u32 index, u32 *data)
|
||||
{
|
||||
u32 *buf;
|
||||
@@ -4448,7 +4453,13 @@ static int lan78xx_probe(struct usb_inte
|
||||
@@ -4446,7 +4451,13 @@ static int lan78xx_probe(struct usb_inte
|
||||
if (ret < 0)
|
||||
goto out4;
|
||||
|
||||
|
||||
+3
-3
@@ -14,7 +14,7 @@ Signed-off-by: Phil Elwell <phil@raspberrypi.org>
|
||||
|
||||
--- a/drivers/net/usb/lan78xx.c
|
||||
+++ b/drivers/net/usb/lan78xx.c
|
||||
@@ -2915,6 +2915,11 @@ static int lan78xx_reset(struct lan78xx_
|
||||
@@ -2913,6 +2913,11 @@ static int lan78xx_reset(struct lan78xx_
|
||||
int ret;
|
||||
u32 buf;
|
||||
u8 sig;
|
||||
@@ -26,7 +26,7 @@ Signed-off-by: Phil Elwell <phil@raspberrypi.org>
|
||||
|
||||
ret = lan78xx_read_reg(dev, HW_CFG, &buf);
|
||||
if (ret < 0)
|
||||
@@ -2983,6 +2988,10 @@ static int lan78xx_reset(struct lan78xx_
|
||||
@@ -2981,6 +2986,10 @@ static int lan78xx_reset(struct lan78xx_
|
||||
buf |= HW_CFG_CLK125_EN_;
|
||||
buf |= HW_CFG_REFCLK25_EN_;
|
||||
|
||||
@@ -37,7 +37,7 @@ Signed-off-by: Phil Elwell <phil@raspberrypi.org>
|
||||
ret = lan78xx_write_reg(dev, HW_CFG, buf);
|
||||
if (ret < 0)
|
||||
return ret;
|
||||
@@ -3085,6 +3094,9 @@ static int lan78xx_reset(struct lan78xx_
|
||||
@@ -3083,6 +3092,9 @@ static int lan78xx_reset(struct lan78xx_
|
||||
buf |= MAC_CR_AUTO_DUPLEX_ | MAC_CR_AUTO_SPEED_;
|
||||
}
|
||||
}
|
||||
|
||||
+2
-2
@@ -16,7 +16,7 @@ Signed-off-by: Dave Stevenson <dave.stevenson@raspberrypi.org>
|
||||
|
||||
--- a/drivers/media/i2c/adv7180.c
|
||||
+++ b/drivers/media/i2c/adv7180.c
|
||||
@@ -1352,6 +1352,7 @@ static const struct adv7180_chip_info ad
|
||||
@@ -1359,6 +1359,7 @@ static const struct adv7180_chip_info ad
|
||||
static int init_device(struct adv7180_state *state)
|
||||
{
|
||||
int ret;
|
||||
@@ -24,7 +24,7 @@ Signed-off-by: Dave Stevenson <dave.stevenson@raspberrypi.org>
|
||||
|
||||
mutex_lock(&state->mutex);
|
||||
|
||||
@@ -1399,6 +1400,18 @@ static int init_device(struct adv7180_st
|
||||
@@ -1406,6 +1407,18 @@ static int init_device(struct adv7180_st
|
||||
goto out_unlock;
|
||||
}
|
||||
|
||||
|
||||
+1
-1
@@ -14,7 +14,7 @@ Signed-off-by: Dave Stevenson <dave.stevenson@raspberrypi.org>
|
||||
|
||||
--- a/drivers/media/i2c/adv7180.c
|
||||
+++ b/drivers/media/i2c/adv7180.c
|
||||
@@ -1341,6 +1341,7 @@ static const struct adv7180_chip_info ad
|
||||
@@ -1348,6 +1348,7 @@ static const struct adv7180_chip_info ad
|
||||
BIT(ADV7182_INPUT_SVIDEO_AIN1_AIN2) |
|
||||
BIT(ADV7182_INPUT_SVIDEO_AIN3_AIN4) |
|
||||
BIT(ADV7182_INPUT_SVIDEO_AIN7_AIN8) |
|
||||
|
||||
+2
-2
@@ -37,7 +37,7 @@ Signed-off-by: popcornmix <popcornmix@gmail.com>
|
||||
|
||||
--- a/drivers/gpu/drm/v3d/v3d_drv.c
|
||||
+++ b/drivers/gpu/drm/v3d/v3d_drv.c
|
||||
@@ -331,6 +331,21 @@ static int v3d_platform_drm_probe(struct
|
||||
@@ -333,6 +333,21 @@ static int v3d_platform_drm_probe(struct
|
||||
}
|
||||
}
|
||||
|
||||
@@ -59,7 +59,7 @@ Signed-off-by: popcornmix <popcornmix@gmail.com>
|
||||
if (v3d->ver < 41) {
|
||||
ret = map_regs(v3d, &v3d->gca_regs, "gca");
|
||||
if (ret)
|
||||
@@ -360,6 +375,8 @@ static int v3d_platform_drm_probe(struct
|
||||
@@ -362,6 +377,8 @@ static int v3d_platform_drm_probe(struct
|
||||
ret = v3d_sysfs_init(dev);
|
||||
if (ret)
|
||||
goto drm_unregister;
|
||||
|
||||
+2
-2
@@ -41,7 +41,7 @@ Signed-off-by: Maxime Ripard <maxime@cerno.tech>
|
||||
struct drm_device *drm;
|
||||
struct v3d_dev *v3d;
|
||||
int ret;
|
||||
@@ -337,7 +343,20 @@ static int v3d_platform_drm_probe(struct
|
||||
@@ -339,7 +345,20 @@ static int v3d_platform_drm_probe(struct
|
||||
dev_err(dev, "Failed to get clock (%ld)\n", PTR_ERR(v3d->clk));
|
||||
return PTR_ERR(v3d->clk);
|
||||
}
|
||||
@@ -63,7 +63,7 @@ Signed-off-by: Maxime Ripard <maxime@cerno.tech>
|
||||
/* For downclocking, drop it to the minimum frequency we can get from
|
||||
* the CPRMAN clock generator dividing off our parent. The divider is
|
||||
* 4 bits, but ask for just higher than that so that rounding doesn't
|
||||
@@ -375,7 +394,7 @@ static int v3d_platform_drm_probe(struct
|
||||
@@ -377,7 +396,7 @@ static int v3d_platform_drm_probe(struct
|
||||
ret = v3d_sysfs_init(dev);
|
||||
if (ret)
|
||||
goto drm_unregister;
|
||||
|
||||
+2
-2
@@ -32,7 +32,7 @@ Signed-off-by: Jonathan Bell <jonathan@raspberrypi.org>
|
||||
#define USB_VENDOR_ID_BELKIN 0x050d
|
||||
#define USB_DEVICE_ID_FLIP_KVM 0x3201
|
||||
|
||||
@@ -1471,6 +1474,9 @@
|
||||
@@ -1480,6 +1483,9 @@
|
||||
#define USB_VENDOR_ID_XIAOMI 0x2717
|
||||
#define USB_DEVICE_ID_MI_SILENT_MOUSE 0x5014
|
||||
|
||||
@@ -52,7 +52,7 @@ Signed-off-by: Jonathan Bell <jonathan@raspberrypi.org>
|
||||
{ HID_USB_DEVICE(USB_VENDOR_ID_CHICONY, USB_DEVICE_ID_CHICONY_MULTI_TOUCH), HID_QUIRK_MULTI_INPUT },
|
||||
{ HID_USB_DEVICE(USB_VENDOR_ID_CHICONY, USB_DEVICE_ID_CHICONY_PIXART_USB_OPTICAL_MOUSE), HID_QUIRK_ALWAYS_POLL },
|
||||
{ HID_USB_DEVICE(USB_VENDOR_ID_CHICONY, USB_DEVICE_ID_CHICONY_PIXART_USB_OPTICAL_MOUSE2), HID_QUIRK_ALWAYS_POLL },
|
||||
@@ -215,6 +216,7 @@ static const struct hid_device_id hid_qu
|
||||
@@ -216,6 +217,7 @@ static const struct hid_device_id hid_qu
|
||||
{ HID_USB_DEVICE(USB_VENDOR_ID_WISEGROUP, USB_DEVICE_ID_QUAD_USB_JOYPAD), HID_QUIRK_NOGET | HID_QUIRK_MULTI_INPUT },
|
||||
{ HID_USB_DEVICE(USB_VENDOR_ID_XIN_MO, USB_DEVICE_ID_XIN_MO_DUAL_ARCADE), HID_QUIRK_MULTI_INPUT },
|
||||
{ HID_USB_DEVICE(USB_VENDOR_ID_LOGITECH, USB_DEVICE_ID_LOGITECH_GROUP_AUDIO), HID_QUIRK_NOGET },
|
||||
|
||||
+1
-1
@@ -426,7 +426,7 @@ Signed-off-by: Naushir Patuck <naush@raspberrypi.com>
|
||||
+...
|
||||
--- a/MAINTAINERS
|
||||
+++ b/MAINTAINERS
|
||||
@@ -21550,6 +21550,14 @@ T: git git://linuxtv.org/media.git
|
||||
@@ -21563,6 +21563,14 @@ T: git git://linuxtv.org/media.git
|
||||
F: Documentation/devicetree/bindings/media/i2c/sony,imx415.yaml
|
||||
F: drivers/media/i2c/imx415.c
|
||||
|
||||
|
||||
+1
-1
@@ -193,7 +193,7 @@ media: i2c: imx519: Squash fixes
|
||||
+...
|
||||
--- a/MAINTAINERS
|
||||
+++ b/MAINTAINERS
|
||||
@@ -21558,6 +21558,14 @@ T: git git://linuxtv.org/media_tree.git
|
||||
@@ -21571,6 +21571,14 @@ T: git git://linuxtv.org/media_tree.git
|
||||
F: Documentation/devicetree/bindings/media/i2c/imx477.yaml
|
||||
F: drivers/media/i2c/imx477.c
|
||||
|
||||
|
||||
+1
-1
@@ -132,7 +132,7 @@ Signed-off-by: David Plowman <david.plowman@raspberrypi.com>
|
||||
+...
|
||||
--- a/MAINTAINERS
|
||||
+++ b/MAINTAINERS
|
||||
@@ -21555,6 +21555,7 @@ M: Raspberry Pi Kernel Maintenance <kern
|
||||
@@ -21568,6 +21568,7 @@ M: Raspberry Pi Kernel Maintenance <kern
|
||||
L: linux-media@vger.kernel.org
|
||||
S: Maintained
|
||||
T: git git://linuxtv.org/media_tree.git
|
||||
|
||||
+1
-1
@@ -90,7 +90,7 @@ Signed-off-by: Dave Stevenson <dave.stevenson@raspberrypi.com>
|
||||
+...
|
||||
--- a/MAINTAINERS
|
||||
+++ b/MAINTAINERS
|
||||
@@ -4374,6 +4374,13 @@ S: Maintained
|
||||
@@ -4380,6 +4380,13 @@ S: Maintained
|
||||
F: Documentation/devicetree/bindings/media/brcm,bcm2835-unicam.yaml
|
||||
F: drivers/media/platform/broadcom/bcm2835-unicam*
|
||||
|
||||
|
||||
+1
-1
@@ -331,7 +331,7 @@ Signed-off-by: Kieran Bingham <kieran.bingham@ideasonboard.com>
|
||||
|
||||
--- a/MAINTAINERS
|
||||
+++ b/MAINTAINERS
|
||||
@@ -4374,6 +4374,15 @@ S: Maintained
|
||||
@@ -4380,6 +4380,15 @@ S: Maintained
|
||||
F: Documentation/devicetree/bindings/media/brcm,bcm2835-unicam.yaml
|
||||
F: drivers/media/platform/broadcom/bcm2835-unicam*
|
||||
|
||||
|
||||
+4
-4
@@ -26,7 +26,7 @@ Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
|
||||
|
||||
v4l2_ctrl_handler_init(&sensor->ctrls, 9);
|
||||
|
||||
@@ -1351,6 +1352,11 @@ static int ov5647_init_controls(struct o
|
||||
@@ -1353,6 +1354,11 @@ static int ov5647_init_controls(struct o
|
||||
ARRAY_SIZE(ov5647_test_pattern_menu) - 1,
|
||||
0, 0, ov5647_test_pattern_menu);
|
||||
|
||||
@@ -38,9 +38,9 @@ Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
|
||||
if (sensor->ctrls.error)
|
||||
goto handler_free;
|
||||
|
||||
@@ -1434,7 +1440,7 @@ static int ov5647_probe(struct i2c_clien
|
||||
|
||||
sensor->mode = OV5647_DEFAULT_MODE;
|
||||
@@ -1441,7 +1447,7 @@ static int ov5647_probe(struct i2c_clien
|
||||
sd->internal_ops = &ov5647_subdev_internal_ops;
|
||||
sd->flags |= V4L2_SUBDEV_FL_HAS_DEVNODE | V4L2_SUBDEV_FL_HAS_EVENTS;
|
||||
|
||||
- ret = ov5647_init_controls(sensor);
|
||||
+ ret = ov5647_init_controls(sensor, dev);
|
||||
|
||||
-25
@@ -1,25 +0,0 @@
|
||||
From 70c32664e555b0641cc187eebf0d738eb10a33a0 Mon Sep 17 00:00:00 2001
|
||||
From: David Plowman <david.plowman@raspberrypi.com>
|
||||
Date: Tue, 11 May 2021 12:52:26 +0100
|
||||
Subject: [PATCH] media: i2c: ov5647: Correct pixel array offset
|
||||
|
||||
The top offset in the pixel array is actually 6 (see page 3-1 of the
|
||||
OV5647 data sheet).
|
||||
|
||||
Fixes: f2f7ad5ce5e52 ("media: i2c: ov5647: Selection compliance fixes")
|
||||
Signed-off-by: David Plowman <david.plowman@raspberrypi.com>
|
||||
---
|
||||
drivers/media/i2c/ov5647.c | 2 +-
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
|
||||
--- a/drivers/media/i2c/ov5647.c
|
||||
+++ b/drivers/media/i2c/ov5647.c
|
||||
@@ -69,7 +69,7 @@
|
||||
#define OV5647_NATIVE_HEIGHT 1956U
|
||||
|
||||
#define OV5647_PIXEL_ARRAY_LEFT 16U
|
||||
-#define OV5647_PIXEL_ARRAY_TOP 16U
|
||||
+#define OV5647_PIXEL_ARRAY_TOP 6U
|
||||
#define OV5647_PIXEL_ARRAY_WIDTH 2592U
|
||||
#define OV5647_PIXEL_ARRAY_HEIGHT 1944U
|
||||
|
||||
-26
@@ -1,26 +0,0 @@
|
||||
From 3a415d5da89b4a2d83f5590820fa649293eef6ba Mon Sep 17 00:00:00 2001
|
||||
From: David Plowman <david.plowman@raspberrypi.com>
|
||||
Date: Tue, 11 May 2021 12:57:22 +0100
|
||||
Subject: [PATCH] media: i2c: ov5647: Correct minimum VBLANK value
|
||||
|
||||
Trial and error reveals that the minimum vblank value appears to be 24
|
||||
(the OV5647 data sheet does not give any clues). This fixes streaming
|
||||
lock-ups in full resolution mode.
|
||||
|
||||
Fixes: 9b5a5ebedc303 ("media: i2c: ov5647: Add support for V4L2_CID_VBLANK")
|
||||
Signed-off-by: David Plowman <david.plowman@raspberrypi.com>
|
||||
---
|
||||
drivers/media/i2c/ov5647.c | 2 +-
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
|
||||
--- a/drivers/media/i2c/ov5647.c
|
||||
+++ b/drivers/media/i2c/ov5647.c
|
||||
@@ -73,7 +73,7 @@
|
||||
#define OV5647_PIXEL_ARRAY_WIDTH 2592U
|
||||
#define OV5647_PIXEL_ARRAY_HEIGHT 1944U
|
||||
|
||||
-#define OV5647_VBLANK_MIN 4
|
||||
+#define OV5647_VBLANK_MIN 24
|
||||
#define OV5647_VTS_MAX 32767
|
||||
|
||||
#define OV5647_EXPOSURE_MIN 4
|
||||
+8
-8
@@ -315,7 +315,7 @@ Signed-off-by: Dave Stevenson <dave.stevenson@raspberrypi.com>
|
||||
ddc = of_parse_phandle(dev->of_node, "ddc-i2c-bus", 0);
|
||||
if (ddc) {
|
||||
panel->ddc = of_find_i2c_adapter_by_node(ddc);
|
||||
@@ -2263,6 +2244,32 @@ static const struct panel_desc friendlya
|
||||
@@ -2264,6 +2245,32 @@ static const struct panel_desc friendlya
|
||||
},
|
||||
};
|
||||
|
||||
@@ -348,7 +348,7 @@ Signed-off-by: Dave Stevenson <dave.stevenson@raspberrypi.com>
|
||||
static const struct drm_display_mode giantplus_gpg482739qs5_mode = {
|
||||
.clock = 9000,
|
||||
.hdisplay = 480,
|
||||
@@ -2443,6 +2450,38 @@ static const struct panel_desc innolux_a
|
||||
@@ -2444,6 +2451,38 @@ static const struct panel_desc innolux_a
|
||||
.bus_flags = DRM_BUS_FLAG_DE_HIGH | DRM_BUS_FLAG_PIXDATA_DRIVE_POSEDGE,
|
||||
};
|
||||
|
||||
@@ -387,7 +387,7 @@ Signed-off-by: Dave Stevenson <dave.stevenson@raspberrypi.com>
|
||||
static const struct drm_display_mode innolux_at070tn92_mode = {
|
||||
.clock = 33333,
|
||||
.hdisplay = 800,
|
||||
@@ -3856,6 +3895,31 @@ static const struct panel_desc rocktech_
|
||||
@@ -3857,6 +3896,31 @@ static const struct panel_desc rocktech_
|
||||
.connector_type = DRM_MODE_CONNECTOR_DPI,
|
||||
};
|
||||
|
||||
@@ -419,7 +419,7 @@ Signed-off-by: Dave Stevenson <dave.stevenson@raspberrypi.com>
|
||||
static const struct display_timing rocktech_rk070er9427_timing = {
|
||||
.pixelclock = { 26400000, 33300000, 46800000 },
|
||||
.hactive = { 800, 800, 800 },
|
||||
@@ -4800,6 +4864,9 @@ static const struct of_device_id platfor
|
||||
@@ -4801,6 +4865,9 @@ static const struct of_device_id platfor
|
||||
.compatible = "friendlyarm,hd702e",
|
||||
.data = &friendlyarm_hd702e,
|
||||
}, {
|
||||
@@ -429,7 +429,7 @@ Signed-off-by: Dave Stevenson <dave.stevenson@raspberrypi.com>
|
||||
.compatible = "giantplus,gpg482739qs5",
|
||||
.data = &giantplus_gpg482739qs5
|
||||
}, {
|
||||
@@ -4821,6 +4888,9 @@ static const struct of_device_id platfor
|
||||
@@ -4822,6 +4889,9 @@ static const struct of_device_id platfor
|
||||
.compatible = "innolux,at043tn24",
|
||||
.data = &innolux_at043tn24,
|
||||
}, {
|
||||
@@ -439,7 +439,7 @@ Signed-off-by: Dave Stevenson <dave.stevenson@raspberrypi.com>
|
||||
.compatible = "innolux,at070tn92",
|
||||
.data = &innolux_at070tn92,
|
||||
}, {
|
||||
@@ -4980,6 +5050,9 @@ static const struct of_device_id platfor
|
||||
@@ -4981,6 +5051,9 @@ static const struct of_device_id platfor
|
||||
.compatible = "rocktech,rk043fn48h",
|
||||
.data = &rocktech_rk043fn48h,
|
||||
}, {
|
||||
@@ -449,7 +449,7 @@ Signed-off-by: Dave Stevenson <dave.stevenson@raspberrypi.com>
|
||||
.compatible = "rocktech,rk070er9427",
|
||||
.data = &rocktech_rk070er9427,
|
||||
}, {
|
||||
@@ -5336,6 +5409,9 @@ static const struct panel_desc_dsi osd10
|
||||
@@ -5337,6 +5410,9 @@ static const struct panel_desc_dsi osd10
|
||||
.lanes = 4,
|
||||
};
|
||||
|
||||
@@ -459,7 +459,7 @@ Signed-off-by: Dave Stevenson <dave.stevenson@raspberrypi.com>
|
||||
static const struct of_device_id dsi_of_match[] = {
|
||||
{
|
||||
.compatible = "auo,b080uan01",
|
||||
@@ -5359,20 +5435,137 @@ static const struct of_device_id dsi_of_
|
||||
@@ -5360,20 +5436,137 @@ static const struct of_device_id dsi_of_
|
||||
.compatible = "osddisplays,osd101t2045-53ts",
|
||||
.data = &osd101t2045_53ts
|
||||
}, {
|
||||
|
||||
+1
-1
@@ -40,7 +40,7 @@ Signed-off-by: Ratchanan Srirattanamet <peathot@hotmail.com>
|
||||
depends on ARCH_PXA || ARCH_MMP || COMPILE_TEST
|
||||
--- a/drivers/gpio/Makefile
|
||||
+++ b/drivers/gpio/Makefile
|
||||
@@ -136,6 +136,7 @@ obj-$(CONFIG_GPIO_PCI_IDIO_16) += gpio-
|
||||
@@ -137,6 +137,7 @@ obj-$(CONFIG_GPIO_PCI_IDIO_16) += gpio-
|
||||
obj-$(CONFIG_GPIO_PISOSR) += gpio-pisosr.o
|
||||
obj-$(CONFIG_GPIO_PL061) += gpio-pl061.o
|
||||
obj-$(CONFIG_GPIO_PMIC_EIC_SPRD) += gpio-pmic-eic-sprd.o
|
||||
|
||||
-50
@@ -1,50 +0,0 @@
|
||||
From 2469a06f61b88939d92fd8e61a32afd5566c0be0 Mon Sep 17 00:00:00 2001
|
||||
From: David Plowman <david.plowman@raspberrypi.com>
|
||||
Date: Thu, 21 Oct 2021 14:47:00 +0100
|
||||
Subject: [PATCH] media: i2c: ov5647: Sensor should report RAW color space
|
||||
|
||||
Tested on Raspberry Pi running libcamera.
|
||||
|
||||
Signed-off-by: David Plowman <david.plowman@raspberrypi.com>
|
||||
---
|
||||
drivers/media/i2c/ov5647.c | 8 ++++----
|
||||
1 file changed, 4 insertions(+), 4 deletions(-)
|
||||
|
||||
--- a/drivers/media/i2c/ov5647.c
|
||||
+++ b/drivers/media/i2c/ov5647.c
|
||||
@@ -508,7 +508,7 @@ static const struct ov5647_mode ov5647_m
|
||||
{
|
||||
.format = {
|
||||
.code = MEDIA_BUS_FMT_SBGGR10_1X10,
|
||||
- .colorspace = V4L2_COLORSPACE_SRGB,
|
||||
+ .colorspace = V4L2_COLORSPACE_RAW,
|
||||
.field = V4L2_FIELD_NONE,
|
||||
.width = 2592,
|
||||
.height = 1944
|
||||
@@ -529,7 +529,7 @@ static const struct ov5647_mode ov5647_m
|
||||
{
|
||||
.format = {
|
||||
.code = MEDIA_BUS_FMT_SBGGR10_1X10,
|
||||
- .colorspace = V4L2_COLORSPACE_SRGB,
|
||||
+ .colorspace = V4L2_COLORSPACE_RAW,
|
||||
.field = V4L2_FIELD_NONE,
|
||||
.width = 1920,
|
||||
.height = 1080
|
||||
@@ -550,7 +550,7 @@ static const struct ov5647_mode ov5647_m
|
||||
{
|
||||
.format = {
|
||||
.code = MEDIA_BUS_FMT_SBGGR10_1X10,
|
||||
- .colorspace = V4L2_COLORSPACE_SRGB,
|
||||
+ .colorspace = V4L2_COLORSPACE_RAW,
|
||||
.field = V4L2_FIELD_NONE,
|
||||
.width = 1296,
|
||||
.height = 972
|
||||
@@ -571,7 +571,7 @@ static const struct ov5647_mode ov5647_m
|
||||
{
|
||||
.format = {
|
||||
.code = MEDIA_BUS_FMT_SBGGR10_1X10,
|
||||
- .colorspace = V4L2_COLORSPACE_SRGB,
|
||||
+ .colorspace = V4L2_COLORSPACE_RAW,
|
||||
.field = V4L2_FIELD_NONE,
|
||||
.width = 640,
|
||||
.height = 480
|
||||
+1
-1
@@ -170,7 +170,7 @@ Signed-off-by: David Plowman <david.plowman@raspberrypi.com>
|
||||
default:
|
||||
dev_info(&client->dev,
|
||||
"Control (id:0x%x, val:0x%x) not supported\n",
|
||||
@@ -1354,6 +1408,16 @@ static int ov5647_init_controls(struct o
|
||||
@@ -1356,6 +1410,16 @@ static int ov5647_init_controls(struct o
|
||||
ARRAY_SIZE(ov5647_test_pattern_menu) - 1,
|
||||
0, 0, ov5647_test_pattern_menu);
|
||||
|
||||
|
||||
+1
-1
@@ -15,7 +15,7 @@ Signed-off-by: Phil Elwell <phil@raspberrypi.com>
|
||||
|
||||
--- a/drivers/spi/spidev.c
|
||||
+++ b/drivers/spi/spidev.c
|
||||
@@ -711,6 +711,7 @@ static const struct spi_device_id spidev
|
||||
@@ -693,6 +693,7 @@ static const struct spi_device_id spidev
|
||||
{ .name = "spi-authenta" },
|
||||
{ .name = "em3581" },
|
||||
{ .name = "si3210" },
|
||||
|
||||
+1
-1
@@ -95,7 +95,7 @@ Signed-off-by: Dave Stevenson <dave.stevenson@raspberrypi.com>
|
||||
static int ov5647_init_controls(struct ov5647 *sensor, struct device *dev)
|
||||
{
|
||||
struct i2c_client *client = v4l2_get_subdevdata(&sensor->sd);
|
||||
@@ -1502,6 +1533,12 @@ static int ov5647_probe(struct i2c_clien
|
||||
@@ -1504,6 +1535,12 @@ static int ov5647_probe(struct i2c_clien
|
||||
return -EINVAL;
|
||||
}
|
||||
|
||||
|
||||
+4
-4
@@ -17,7 +17,7 @@ Signed-off-by: Dave Stevenson <dave.stevenson@raspberrypi.com>
|
||||
|
||||
--- a/drivers/mfd/Kconfig
|
||||
+++ b/drivers/mfd/Kconfig
|
||||
@@ -1186,6 +1186,16 @@ config MFD_SY7636A
|
||||
@@ -1210,6 +1210,16 @@ config MFD_SY7636A
|
||||
To enable support for building sub-devices as modules,
|
||||
choose M here.
|
||||
|
||||
@@ -52,10 +52,10 @@ Signed-off-by: Dave Stevenson <dave.stevenson@raspberrypi.com>
|
||||
static int simple_mfd_i2c_probe(struct i2c_client *i2c)
|
||||
{
|
||||
const struct simple_mfd_data *simple_mfd_data;
|
||||
@@ -88,6 +97,7 @@ static const struct of_device_id simple_
|
||||
@@ -119,6 +128,7 @@ static const struct of_device_id simple_
|
||||
{ .compatible = "maxim,max77705-battery", .data = &maxim_mon_max77705},
|
||||
{ .compatible = "silergy,sy7636a", .data = &silergy_sy7636a},
|
||||
{ .compatible = "maxim,max5970", .data = &maxim_max5970},
|
||||
{ .compatible = "maxim,max5978", .data = &maxim_max5970},
|
||||
{ .compatible = "spacemit,p1", .data = &spacemit_p1, },
|
||||
+ { .compatible = "raspberrypi,poe-core", &rpi_poe_core },
|
||||
{ .compatible = "raspberrypi,sensehat" },
|
||||
{}
|
||||
|
||||
+1
-1
@@ -15,7 +15,7 @@ Signed-off-by: Dave Stevenson <dave.stevenson@raspberrypi.com>
|
||||
|
||||
--- a/drivers/media/i2c/ov5647.c
|
||||
+++ b/drivers/media/i2c/ov5647.c
|
||||
@@ -1566,7 +1566,7 @@ static int ov5647_probe(struct i2c_clien
|
||||
@@ -1568,7 +1568,7 @@ static int ov5647_probe(struct i2c_clien
|
||||
if (ret < 0)
|
||||
goto power_off;
|
||||
|
||||
|
||||
+2
-2
@@ -20,7 +20,7 @@ Signed-off-by: David Plowman <david.plowman@raspberrypi.com>
|
||||
|
||||
--- a/mm/page_alloc.c
|
||||
+++ b/mm/page_alloc.c
|
||||
@@ -207,6 +207,27 @@ EXPORT_SYMBOL(node_states);
|
||||
@@ -234,6 +234,27 @@ EXPORT_SYMBOL(node_states);
|
||||
|
||||
gfp_t gfp_allowed_mask __read_mostly = GFP_BOOT_MASK;
|
||||
|
||||
@@ -48,7 +48,7 @@ Signed-off-by: David Plowman <david.plowman@raspberrypi.com>
|
||||
#ifdef CONFIG_HUGETLB_PAGE_SIZE_VARIABLE
|
||||
unsigned int pageblock_order __read_mostly;
|
||||
#endif
|
||||
@@ -2265,12 +2286,13 @@ __rmqueue(struct zone *zone, unsigned in
|
||||
@@ -2292,12 +2313,13 @@ __rmqueue(struct zone *zone, unsigned in
|
||||
if (IS_ENABLED(CONFIG_CMA)) {
|
||||
/*
|
||||
* Balance movable allocations between regular and CMA areas by
|
||||
|
||||
+1
-1
@@ -131,7 +131,7 @@ Signed-off-by: Lee Jackson <info@arducam.com>
|
||||
+...
|
||||
--- a/MAINTAINERS
|
||||
+++ b/MAINTAINERS
|
||||
@@ -1752,6 +1752,14 @@ S: Maintained
|
||||
@@ -1758,6 +1758,14 @@ S: Maintained
|
||||
F: drivers/net/arcnet/
|
||||
F: include/uapi/linux/if_arcnet.h
|
||||
|
||||
|
||||
+1
-1
@@ -68,7 +68,7 @@ Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
|
||||
|
||||
--- a/drivers/char/random.c
|
||||
+++ b/drivers/char/random.c
|
||||
@@ -867,6 +867,14 @@ void __init random_init_early(const char
|
||||
@@ -857,6 +857,14 @@ void __init random_init_early(const char
|
||||
unsigned long entropy[BLAKE2S_BLOCK_SIZE / sizeof(long)];
|
||||
size_t i, longs, arch_bits;
|
||||
|
||||
|
||||
+1
-1
@@ -134,7 +134,7 @@ Signed-off-by: Lee Jackson <info@arducam.com>
|
||||
+...
|
||||
--- a/MAINTAINERS
|
||||
+++ b/MAINTAINERS
|
||||
@@ -1752,6 +1752,14 @@ S: Maintained
|
||||
@@ -1758,6 +1758,14 @@ S: Maintained
|
||||
F: drivers/net/arcnet/
|
||||
F: include/uapi/linux/if_arcnet.h
|
||||
|
||||
|
||||
+1
-1
@@ -78,7 +78,7 @@ Signed-off-by: Dave Stevenson <dave.stevenson@raspberrypi.org>
|
||||
*norm = state->curr_norm;
|
||||
|
||||
return 0;
|
||||
@@ -890,6 +914,8 @@ static int adv7180_s_stream(struct v4l2_
|
||||
@@ -897,6 +921,8 @@ static int adv7180_s_stream(struct v4l2_
|
||||
return 0;
|
||||
}
|
||||
|
||||
|
||||
+1
-1
@@ -137,7 +137,7 @@ Signed-off-by: Dave Stevenson <dave.stevenson@raspberrypi.com>
|
||||
+...
|
||||
--- a/MAINTAINERS
|
||||
+++ b/MAINTAINERS
|
||||
@@ -21599,6 +21599,14 @@ T: git git://linuxtv.org/media_tree.git
|
||||
@@ -21612,6 +21612,14 @@ T: git git://linuxtv.org/media_tree.git
|
||||
F: Documentation/devicetree/bindings/media/i2c/imx519.yaml
|
||||
F: drivers/media/i2c/imx519.c
|
||||
|
||||
|
||||
+1
-1
@@ -10,7 +10,7 @@ Signed-off-by: Phil Elwell <phil@raspberrypi.com>
|
||||
|
||||
--- a/drivers/gpio/gpio-pca953x.c
|
||||
+++ b/drivers/gpio/gpio-pca953x.c
|
||||
@@ -1306,6 +1306,7 @@ static const struct of_device_id pca953x
|
||||
@@ -1353,6 +1353,7 @@ static const struct of_device_id pca953x
|
||||
{ .compatible = "ti,tca9535", .data = OF_953X(16, PCA_INT), },
|
||||
{ .compatible = "ti,tca9538", .data = OF_953X( 8, PCA_INT), },
|
||||
{ .compatible = "ti,tca9539", .data = OF_953X(16, PCA_INT), },
|
||||
|
||||
+2
-2
@@ -10,7 +10,7 @@ Signed-off-by: Phil Elwell <phil@raspberrypi.com>
|
||||
|
||||
--- a/drivers/hwmon/aht10.c
|
||||
+++ b/drivers/hwmon/aht10.c
|
||||
@@ -57,6 +57,12 @@ static const struct i2c_device_id aht10_
|
||||
@@ -62,6 +62,12 @@ static const struct i2c_device_id aht10_
|
||||
};
|
||||
MODULE_DEVICE_TABLE(i2c, aht10_id);
|
||||
|
||||
@@ -23,7 +23,7 @@ Signed-off-by: Phil Elwell <phil@raspberrypi.com>
|
||||
/**
|
||||
* struct aht10_data - All the data required to operate an AHT10/AHT20 chip
|
||||
* @client: the i2c client associated with the AHT10/AHT20
|
||||
@@ -380,6 +386,7 @@ static int aht10_probe(struct i2c_client
|
||||
@@ -395,6 +401,7 @@ static int aht10_probe(struct i2c_client
|
||||
static struct i2c_driver aht10_driver = {
|
||||
.driver = {
|
||||
.name = "aht10",
|
||||
|
||||
+1
-1
@@ -271,7 +271,7 @@ Signed-off-by: Naushir Patuck <naush@raspberrypi.com>
|
||||
+...
|
||||
--- a/MAINTAINERS
|
||||
+++ b/MAINTAINERS
|
||||
@@ -21604,7 +21604,7 @@ M: Raspberry Pi Kernel Maintenance <kern
|
||||
@@ -21617,7 +21617,7 @@ M: Raspberry Pi Kernel Maintenance <kern
|
||||
L: linux-media@vger.kernel.org
|
||||
S: Maintained
|
||||
T: git git://linuxtv.org/media_tree.git
|
||||
|
||||
@@ -12,7 +12,7 @@ sdhci: remove PYA0_INTR_BUG quirk. Add quirks to disable some of the higher SDR
|
||||
|
||||
--- a/drivers/mmc/host/sdhci-of-dwcmshc.c
|
||||
+++ b/drivers/mmc/host/sdhci-of-dwcmshc.c
|
||||
@@ -1241,7 +1241,11 @@ static const struct dwcmshc_pltfm_data s
|
||||
@@ -1248,7 +1248,11 @@ static const struct dwcmshc_pltfm_data s
|
||||
.quirks = SDHCI_QUIRK_CAP_CLOCK_BASE_BROKEN |
|
||||
SDHCI_QUIRK_BROKEN_TIMEOUT_VAL,
|
||||
.quirks2 = SDHCI_QUIRK2_PRESET_VALUE_BROKEN |
|
||||
|
||||
+6
-6
@@ -191,7 +191,7 @@ Signed-off-by: Jonathan Bell <jonathan@raspberrypi.com>
|
||||
static void macb_init_buffers(struct macb *bp)
|
||||
{
|
||||
struct macb_queue *queue;
|
||||
@@ -977,6 +993,7 @@ static int macb_mii_init(struct macb *bp
|
||||
@@ -974,6 +990,7 @@ static int macb_mii_init(struct macb *bp
|
||||
bp->mii_bus->write = &macb_mdio_write_c22;
|
||||
bp->mii_bus->read_c45 = &macb_mdio_read_c45;
|
||||
bp->mii_bus->write_c45 = &macb_mdio_write_c45;
|
||||
@@ -199,7 +199,7 @@ Signed-off-by: Jonathan Bell <jonathan@raspberrypi.com>
|
||||
snprintf(bp->mii_bus->id, MII_BUS_ID_SIZE, "%s-%x",
|
||||
bp->pdev->name, bp->pdev->id);
|
||||
bp->mii_bus->priv = bp;
|
||||
@@ -1642,6 +1659,11 @@ static int macb_rx(struct macb_queue *qu
|
||||
@@ -1639,6 +1656,11 @@ static int macb_rx(struct macb_queue *qu
|
||||
|
||||
macb_init_rx_ring(queue);
|
||||
queue_writel(queue, RBQP, queue->rx_ring_dma);
|
||||
@@ -211,7 +211,7 @@ Signed-off-by: Jonathan Bell <jonathan@raspberrypi.com>
|
||||
|
||||
macb_writel(bp, NCR, ctrl | MACB_BIT(RE));
|
||||
|
||||
@@ -1944,8 +1966,9 @@ static irqreturn_t macb_interrupt(int ir
|
||||
@@ -1941,8 +1963,9 @@ static irqreturn_t macb_interrupt(int ir
|
||||
queue_writel(queue, ISR, MACB_BIT(TCOMP) |
|
||||
MACB_BIT(TXUBR));
|
||||
|
||||
@@ -222,7 +222,7 @@ Signed-off-by: Jonathan Bell <jonathan@raspberrypi.com>
|
||||
wmb(); // ensure softirq can see update
|
||||
}
|
||||
|
||||
@@ -2401,6 +2424,11 @@ static netdev_tx_t macb_start_xmit(struc
|
||||
@@ -2398,6 +2421,11 @@ static netdev_tx_t macb_start_xmit(struc
|
||||
skb_tx_timestamp(skb);
|
||||
|
||||
spin_lock(&bp->lock);
|
||||
@@ -234,7 +234,7 @@ Signed-off-by: Jonathan Bell <jonathan@raspberrypi.com>
|
||||
macb_writel(bp, NCR, macb_readl(bp, NCR) | MACB_BIT(TSTART));
|
||||
spin_unlock(&bp->lock);
|
||||
|
||||
@@ -2807,6 +2835,37 @@ static void macb_configure_dma(struct ma
|
||||
@@ -2804,6 +2832,37 @@ static void macb_configure_dma(struct ma
|
||||
}
|
||||
}
|
||||
|
||||
@@ -272,7 +272,7 @@ Signed-off-by: Jonathan Bell <jonathan@raspberrypi.com>
|
||||
static void macb_init_hw(struct macb *bp)
|
||||
{
|
||||
u32 config;
|
||||
@@ -2835,6 +2894,11 @@ static void macb_init_hw(struct macb *bp
|
||||
@@ -2832,6 +2891,11 @@ static void macb_init_hw(struct macb *bp
|
||||
if (bp->caps & MACB_CAPS_JUMBO)
|
||||
bp->rx_frm_len_mask = MACB_RX_JFRMLEN_MASK;
|
||||
|
||||
|
||||
+10
-10
@@ -212,7 +212,7 @@ Signed-off-by: Jonathan Bell <jonathan@raspberrypi.com>
|
||||
},
|
||||
--- a/drivers/usb/dwc3/core.c
|
||||
+++ b/drivers/usb/dwc3/core.c
|
||||
@@ -1320,6 +1320,24 @@ static void dwc3_config_threshold(struct
|
||||
@@ -1322,6 +1322,24 @@ static void dwc3_config_threshold(struct
|
||||
}
|
||||
}
|
||||
|
||||
@@ -237,7 +237,7 @@ Signed-off-by: Jonathan Bell <jonathan@raspberrypi.com>
|
||||
/**
|
||||
* dwc3_core_init - Low-level initialization of DWC3 Core
|
||||
* @dwc: Pointer to our controller context structure
|
||||
@@ -1387,6 +1405,8 @@ static int dwc3_core_init(struct dwc3 *d
|
||||
@@ -1389,6 +1407,8 @@ static int dwc3_core_init(struct dwc3 *d
|
||||
|
||||
dwc3_config_soc_bus(dwc);
|
||||
|
||||
@@ -246,7 +246,7 @@ Signed-off-by: Jonathan Bell <jonathan@raspberrypi.com>
|
||||
ret = dwc3_phy_power_on(dwc);
|
||||
if (ret)
|
||||
goto err_exit_phy;
|
||||
@@ -1491,6 +1511,24 @@ static int dwc3_core_init(struct dwc3 *d
|
||||
@@ -1493,6 +1513,24 @@ static int dwc3_core_init(struct dwc3 *d
|
||||
dwc3_writel(dwc->regs, DWC3_LLUCTL, reg);
|
||||
}
|
||||
|
||||
@@ -271,7 +271,7 @@ Signed-off-by: Jonathan Bell <jonathan@raspberrypi.com>
|
||||
return 0;
|
||||
|
||||
err_power_off_phy:
|
||||
@@ -1676,6 +1714,7 @@ static void dwc3_get_properties(struct d
|
||||
@@ -1678,6 +1716,7 @@ static void dwc3_get_properties(struct d
|
||||
u8 tx_thr_num_pkt_prd = 0;
|
||||
u8 tx_max_burst_prd = 0;
|
||||
u8 tx_fifo_resize_max_num;
|
||||
@@ -279,7 +279,7 @@ Signed-off-by: Jonathan Bell <jonathan@raspberrypi.com>
|
||||
|
||||
/* default to highest possible threshold */
|
||||
lpm_nyet_threshold = 0xf;
|
||||
@@ -1696,6 +1735,9 @@ static void dwc3_get_properties(struct d
|
||||
@@ -1698,6 +1737,9 @@ static void dwc3_get_properties(struct d
|
||||
*/
|
||||
tx_fifo_resize_max_num = 6;
|
||||
|
||||
@@ -289,7 +289,7 @@ Signed-off-by: Jonathan Bell <jonathan@raspberrypi.com>
|
||||
dwc->maximum_speed = usb_get_maximum_speed(dev);
|
||||
dwc->max_ssp_rate = usb_get_maximum_ssp_rate(dev);
|
||||
dwc->dr_mode = usb_get_dr_mode(dev);
|
||||
@@ -1810,6 +1852,9 @@ static void dwc3_get_properties(struct d
|
||||
@@ -1812,6 +1854,9 @@ static void dwc3_get_properties(struct d
|
||||
dwc->dis_split_quirk = device_property_read_bool(dev,
|
||||
"snps,dis-split-quirk");
|
||||
|
||||
@@ -299,7 +299,7 @@ Signed-off-by: Jonathan Bell <jonathan@raspberrypi.com>
|
||||
dwc->lpm_nyet_threshold = lpm_nyet_threshold;
|
||||
dwc->tx_de_emphasis = tx_de_emphasis;
|
||||
|
||||
@@ -1827,6 +1872,8 @@ static void dwc3_get_properties(struct d
|
||||
@@ -1829,6 +1874,8 @@ static void dwc3_get_properties(struct d
|
||||
dwc->tx_thr_num_pkt_prd = tx_thr_num_pkt_prd;
|
||||
dwc->tx_max_burst_prd = tx_max_burst_prd;
|
||||
|
||||
@@ -308,7 +308,7 @@ Signed-off-by: Jonathan Bell <jonathan@raspberrypi.com>
|
||||
dwc->tx_fifo_resize_max_num = tx_fifo_resize_max_num;
|
||||
}
|
||||
|
||||
@@ -2185,6 +2232,12 @@ static int dwc3_probe(struct platform_de
|
||||
@@ -2202,6 +2249,12 @@ static int dwc3_probe(struct platform_de
|
||||
if (IS_ERR(dwc->usb_psy))
|
||||
return dev_err_probe(dev, PTR_ERR(dwc->usb_psy), "couldn't get usb power supply\n");
|
||||
|
||||
@@ -333,7 +333,7 @@ Signed-off-by: Jonathan Bell <jonathan@raspberrypi.com>
|
||||
/* Global Debug LSP MUX Select */
|
||||
#define DWC3_GDBGLSPMUX_ENDBC BIT(15) /* Host only */
|
||||
#define DWC3_GDBGLSPMUX_HOSTSELECT(n) ((n) & 0x3fff)
|
||||
@@ -1087,6 +1090,7 @@ struct dwc3_scratchpad_array {
|
||||
@@ -1089,6 +1092,7 @@ struct dwc3_scratchpad_array {
|
||||
* @tx_max_burst_prd: max periodic ESS transmit burst size
|
||||
* @tx_fifo_resize_max_num: max number of fifos allocated during txfifo resize
|
||||
* @clear_stall_protocol: endpoint number that requires a delayed status phase
|
||||
@@ -341,7 +341,7 @@ Signed-off-by: Jonathan Bell <jonathan@raspberrypi.com>
|
||||
* @hsphy_interface: "utmi" or "ulpi"
|
||||
* @connected: true when we're connected to a host, false otherwise
|
||||
* @softconnect: true when gadget connect is called, false when disconnect runs
|
||||
@@ -1337,6 +1341,7 @@ struct dwc3 {
|
||||
@@ -1342,6 +1346,7 @@ struct dwc3 {
|
||||
u8 tx_max_burst_prd;
|
||||
u8 tx_fifo_resize_max_num;
|
||||
u8 clear_stall_protocol;
|
||||
|
||||
@@ -25,7 +25,7 @@ Signed-off-by: Phil Elwell <phil@raspberrypi.com>
|
||||
|
||||
--- a/drivers/mfd/Kconfig
|
||||
+++ b/drivers/mfd/Kconfig
|
||||
@@ -2384,6 +2384,17 @@ config MFD_INTEL_M10_BMC_PMCI
|
||||
@@ -2408,6 +2408,17 @@ config MFD_INTEL_M10_BMC_PMCI
|
||||
additional drivers must be enabled in order to use the functionality
|
||||
of the device.
|
||||
|
||||
|
||||
+6
-6
@@ -48,7 +48,7 @@ Signed-off-by: Jonathan Bell <jonathan@raspberrypi.com>
|
||||
static unsigned int dwcmshc_get_max_clock(struct sdhci_host *host)
|
||||
{
|
||||
struct sdhci_pltfm_host *pltfm_host = sdhci_priv(host);
|
||||
@@ -1143,10 +1155,11 @@ static int sg2042_init(struct device *de
|
||||
@@ -1150,10 +1162,11 @@ static int sg2042_init(struct device *de
|
||||
}
|
||||
|
||||
static const struct sdhci_ops sdhci_dwcmshc_ops = {
|
||||
@@ -61,7 +61,7 @@ Signed-off-by: Jonathan Bell <jonathan@raspberrypi.com>
|
||||
.reset = dwcmshc_reset,
|
||||
.adma_write_desc = dwcmshc_adma_write_desc,
|
||||
.irq = dwcmshc_cqe_irq_handler,
|
||||
@@ -1219,8 +1232,10 @@ static const struct sdhci_ops sdhci_dwcm
|
||||
@@ -1226,8 +1239,10 @@ static const struct sdhci_ops sdhci_dwcm
|
||||
static const struct dwcmshc_pltfm_data sdhci_dwcmshc_pdata = {
|
||||
.pdata = {
|
||||
.ops = &sdhci_dwcmshc_ops,
|
||||
@@ -74,7 +74,7 @@ Signed-off-by: Jonathan Bell <jonathan@raspberrypi.com>
|
||||
},
|
||||
};
|
||||
|
||||
@@ -1235,6 +1250,15 @@ static const struct dwcmshc_pltfm_data s
|
||||
@@ -1242,6 +1257,15 @@ static const struct dwcmshc_pltfm_data s
|
||||
};
|
||||
#endif
|
||||
|
||||
@@ -90,7 +90,7 @@ Signed-off-by: Jonathan Bell <jonathan@raspberrypi.com>
|
||||
static const struct dwcmshc_pltfm_data sdhci_dwcmshc_rk35xx_pdata = {
|
||||
.pdata = {
|
||||
.ops = &sdhci_dwcmshc_rk35xx_ops,
|
||||
@@ -1358,6 +1382,10 @@ dsbl_cqe_caps:
|
||||
@@ -1365,6 +1389,10 @@ dsbl_cqe_caps:
|
||||
|
||||
static const struct of_device_id sdhci_dwcmshc_dt_ids[] = {
|
||||
{
|
||||
@@ -101,7 +101,7 @@ Signed-off-by: Jonathan Bell <jonathan@raspberrypi.com>
|
||||
.compatible = "rockchip,rk3588-dwcmshc",
|
||||
.data = &sdhci_dwcmshc_rk35xx_pdata,
|
||||
},
|
||||
@@ -1450,13 +1478,32 @@ static int dwcmshc_probe(struct platform
|
||||
@@ -1457,13 +1485,32 @@ static int dwcmshc_probe(struct platform
|
||||
priv->bus_clk = devm_clk_get(dev, "bus");
|
||||
if (!IS_ERR(priv->bus_clk))
|
||||
clk_prepare_enable(priv->bus_clk);
|
||||
@@ -134,7 +134,7 @@ Signed-off-by: Jonathan Bell <jonathan@raspberrypi.com>
|
||||
|
||||
priv->vendor_specific_area1 =
|
||||
sdhci_readl(host, DWCMSHC_P_VENDOR_AREA1) & DWCMSHC_AREA1_MASK;
|
||||
@@ -1516,6 +1563,7 @@ err_rpm:
|
||||
@@ -1523,6 +1570,7 @@ err_rpm:
|
||||
pm_runtime_put_noidle(dev);
|
||||
err_clk:
|
||||
clk_disable_unprepare(pltfm_host->clk);
|
||||
|
||||
+4
-4
@@ -17,7 +17,7 @@ Signed-off-by: Phil Elwell <phil@raspberrypi.com>
|
||||
|
||||
--- a/drivers/i2c/busses/i2c-designware-core.h
|
||||
+++ b/drivers/i2c/busses/i2c-designware-core.h
|
||||
@@ -123,7 +123,9 @@
|
||||
@@ -124,7 +124,9 @@
|
||||
|
||||
#define DW_IC_ERR_TX_ABRT 0x1
|
||||
|
||||
@@ -29,7 +29,7 @@ Signed-off-by: Phil Elwell <phil@raspberrypi.com>
|
||||
#define DW_IC_COMP_PARAM_1_SPEED_MODE_MASK GENMASK(3, 2)
|
||||
--- a/drivers/i2c/busses/i2c-designware-master.c
|
||||
+++ b/drivers/i2c/busses/i2c-designware-master.c
|
||||
@@ -248,6 +248,10 @@ static void i2c_dw_xfer_init(struct dw_i
|
||||
@@ -255,6 +255,10 @@ static void i2c_dw_xfer_init(struct dw_i
|
||||
ic_tar = DW_IC_TAR_10BITADDR_MASTER;
|
||||
}
|
||||
|
||||
@@ -40,7 +40,7 @@ Signed-off-by: Phil Elwell <phil@raspberrypi.com>
|
||||
regmap_update_bits(dev->map, DW_IC_CON, DW_IC_CON_10BITADDR_MASTER,
|
||||
ic_con);
|
||||
|
||||
@@ -457,6 +461,14 @@ i2c_dw_xfer_msg(struct dw_i2c_dev *dev)
|
||||
@@ -464,6 +468,14 @@ i2c_dw_xfer_msg(struct dw_i2c_dev *dev)
|
||||
regmap_read(dev->map, DW_IC_RXFLR, &flr);
|
||||
rx_limit = dev->rx_fifo_depth - flr;
|
||||
|
||||
@@ -55,7 +55,7 @@ Signed-off-by: Phil Elwell <phil@raspberrypi.com>
|
||||
while (buf_len > 0 && tx_limit > 0 && rx_limit > 0) {
|
||||
u32 cmd = 0;
|
||||
|
||||
@@ -895,14 +907,15 @@ static const struct i2c_algorithm i2c_dw
|
||||
@@ -902,14 +914,15 @@ static const struct i2c_algorithm i2c_dw
|
||||
};
|
||||
|
||||
static const struct i2c_adapter_quirks i2c_dw_quirks = {
|
||||
|
||||
+1
-1
@@ -67,7 +67,7 @@ Signed-off-by: Jacopo Mondi <jacopo.mondi@ideasonboard.com>
|
||||
+...
|
||||
--- a/MAINTAINERS
|
||||
+++ b/MAINTAINERS
|
||||
@@ -20062,6 +20062,13 @@ S: Supported
|
||||
@@ -20075,6 +20075,13 @@ S: Supported
|
||||
F: drivers/iio/light/rohm-bu27008.c
|
||||
F: drivers/iio/light/rohm-bu27034.c
|
||||
|
||||
|
||||
+1
-1
@@ -37,7 +37,7 @@ Signed-off-by: Jacopo Mondi <jacopo.mondi@ideasonboard.com>
|
||||
+
|
||||
config VIDEO_DW9714
|
||||
tristate "DW9714 lens voice coil support"
|
||||
depends on I2C && VIDEO_DEV
|
||||
depends on GPIOLIB && I2C && VIDEO_DEV
|
||||
--- a/drivers/media/i2c/Makefile
|
||||
+++ b/drivers/media/i2c/Makefile
|
||||
@@ -26,6 +26,7 @@ obj-$(CONFIG_VIDEO_ARDUCAM_PIVARIETY) +=
|
||||
|
||||
+2
-2
@@ -17,7 +17,7 @@ Signed-off-by: Dave Stevenson <dave.stevenson@raspberrypi.com>
|
||||
|
||||
--- a/drivers/media/i2c/adv7180.c
|
||||
+++ b/drivers/media/i2c/adv7180.c
|
||||
@@ -732,10 +732,15 @@ static int adv7180_enum_mbus_code(struct
|
||||
@@ -739,10 +739,15 @@ static int adv7180_enum_mbus_code(struct
|
||||
struct v4l2_subdev_state *sd_state,
|
||||
struct v4l2_subdev_mbus_code_enum *code)
|
||||
{
|
||||
@@ -34,7 +34,7 @@ Signed-off-by: Dave Stevenson <dave.stevenson@raspberrypi.com>
|
||||
|
||||
return 0;
|
||||
}
|
||||
@@ -745,7 +750,10 @@ static int adv7180_mbus_fmt(struct v4l2_
|
||||
@@ -752,7 +757,10 @@ static int adv7180_mbus_fmt(struct v4l2_
|
||||
{
|
||||
struct adv7180_state *state = to_state(sd);
|
||||
|
||||
|
||||
+5
-5
@@ -36,7 +36,7 @@ This reverts commit 00ecb85c58501f8f7ae75fcb069bbbad5542e853.
|
||||
};
|
||||
#define to_adv7180_sd(_ctrl) (&container_of(_ctrl->handler, \
|
||||
struct adv7180_state, \
|
||||
@@ -625,6 +636,9 @@ static int adv7180_s_ctrl(struct v4l2_ct
|
||||
@@ -632,6 +643,9 @@ static int adv7180_s_ctrl(struct v4l2_ct
|
||||
|
||||
if (ret)
|
||||
return ret;
|
||||
@@ -46,7 +46,7 @@ This reverts commit 00ecb85c58501f8f7ae75fcb069bbbad5542e853.
|
||||
val = ctrl->val;
|
||||
switch (ctrl->id) {
|
||||
case V4L2_CID_BRIGHTNESS:
|
||||
@@ -666,6 +680,7 @@ static int adv7180_s_ctrl(struct v4l2_ct
|
||||
@@ -673,6 +687,7 @@ static int adv7180_s_ctrl(struct v4l2_ct
|
||||
ret = -EINVAL;
|
||||
}
|
||||
|
||||
@@ -54,7 +54,7 @@ This reverts commit 00ecb85c58501f8f7ae75fcb069bbbad5542e853.
|
||||
mutex_unlock(&state->mutex);
|
||||
return ret;
|
||||
}
|
||||
@@ -686,7 +701,7 @@ static const struct v4l2_ctrl_config adv
|
||||
@@ -693,7 +708,7 @@ static const struct v4l2_ctrl_config adv
|
||||
|
||||
static int adv7180_init_controls(struct adv7180_state *state)
|
||||
{
|
||||
@@ -63,7 +63,7 @@ This reverts commit 00ecb85c58501f8f7ae75fcb069bbbad5542e853.
|
||||
|
||||
v4l2_ctrl_new_std(&state->ctrl_hdl, &adv7180_ctrl_ops,
|
||||
V4L2_CID_BRIGHTNESS, ADV7180_BRI_MIN,
|
||||
@@ -712,6 +727,17 @@ static int adv7180_init_controls(struct
|
||||
@@ -719,6 +734,17 @@ static int adv7180_init_controls(struct
|
||||
test_pattern_menu);
|
||||
}
|
||||
|
||||
@@ -81,7 +81,7 @@ This reverts commit 00ecb85c58501f8f7ae75fcb069bbbad5542e853.
|
||||
state->sd.ctrl_handler = &state->ctrl_hdl;
|
||||
if (state->ctrl_hdl.error) {
|
||||
int err = state->ctrl_hdl.error;
|
||||
@@ -839,7 +865,16 @@ static int adv7180_set_pad_format(struct
|
||||
@@ -846,7 +872,16 @@ static int adv7180_set_pad_format(struct
|
||||
ret = adv7180_mbus_fmt(sd, &format->format);
|
||||
|
||||
if (format->which == V4L2_SUBDEV_FORMAT_ACTIVE) {
|
||||
|
||||
+4
-4
@@ -16,7 +16,7 @@ Signed-off-by: Jonathan Bell <jonathan@raspberrypi.com>
|
||||
|
||||
--- a/drivers/usb/dwc3/core.c
|
||||
+++ b/drivers/usb/dwc3/core.c
|
||||
@@ -1486,6 +1486,9 @@ static int dwc3_core_init(struct dwc3 *d
|
||||
@@ -1488,6 +1488,9 @@ static int dwc3_core_init(struct dwc3 *d
|
||||
if (dwc->parkmode_disable_hs_quirk)
|
||||
reg |= DWC3_GUCTL1_PARKMODE_DISABLE_HS;
|
||||
|
||||
@@ -26,7 +26,7 @@ Signed-off-by: Jonathan Bell <jonathan@raspberrypi.com>
|
||||
if (DWC3_VER_IS_WITHIN(DWC3, 290A, ANY)) {
|
||||
if (dwc->maximum_speed == USB_SPEED_FULL ||
|
||||
dwc->maximum_speed == USB_SPEED_HIGH)
|
||||
@@ -1832,6 +1835,8 @@ static void dwc3_get_properties(struct d
|
||||
@@ -1834,6 +1837,8 @@ static void dwc3_get_properties(struct d
|
||||
"snps,parkmode-disable-ss-quirk");
|
||||
dwc->parkmode_disable_hs_quirk = device_property_read_bool(dev,
|
||||
"snps,parkmode-disable-hs-quirk");
|
||||
@@ -45,7 +45,7 @@ Signed-off-by: Jonathan Bell <jonathan@raspberrypi.com>
|
||||
#define DWC3_GUCTL1_RESUME_OPMODE_HS_HOST BIT(10)
|
||||
|
||||
/* Global Status Register */
|
||||
@@ -1142,10 +1143,12 @@ struct dwc3_scratchpad_array {
|
||||
@@ -1144,10 +1145,12 @@ struct dwc3_scratchpad_array {
|
||||
* generation after resume from suspend.
|
||||
* @ulpi_ext_vbus_drv: Set to confiure the upli chip to drives CPEN pin
|
||||
* VBUS with an external supply.
|
||||
@@ -62,7 +62,7 @@ Signed-off-by: Jonathan Bell <jonathan@raspberrypi.com>
|
||||
* @gfladj_refclk_lpm_sel: set if we need to enable SOF/ITP counter
|
||||
* running based on ref_clk
|
||||
* @tx_de_emphasis_quirk: set if we enable Tx de-emphasis quirk
|
||||
@@ -1385,6 +1388,7 @@ struct dwc3 {
|
||||
@@ -1390,6 +1393,7 @@ struct dwc3 {
|
||||
unsigned ulpi_ext_vbus_drv:1;
|
||||
unsigned parkmode_disable_ss_quirk:1;
|
||||
unsigned parkmode_disable_hs_quirk:1;
|
||||
|
||||
+1
-1
@@ -59,7 +59,7 @@ Signed-off-by: Phil Elwell <phil@raspberrypi.com>
|
||||
int i2c_dw_fw_parse_and_configure(struct dw_i2c_dev *dev)
|
||||
--- a/drivers/i2c/busses/i2c-designware-core.h
|
||||
+++ b/drivers/i2c/busses/i2c-designware-core.h
|
||||
@@ -293,6 +293,7 @@ struct dw_i2c_dev {
|
||||
@@ -294,6 +294,7 @@ struct dw_i2c_dev {
|
||||
u16 fp_lcnt;
|
||||
u16 hs_hcnt;
|
||||
u16 hs_lcnt;
|
||||
|
||||
+1
-1
@@ -15,7 +15,7 @@ Signed-off-by: Phil Elwell <phil@raspberrypi.com>
|
||||
|
||||
--- a/drivers/net/usb/lan78xx.c
|
||||
+++ b/drivers/net/usb/lan78xx.c
|
||||
@@ -2440,7 +2440,26 @@ static int lan78xx_phy_init(struct lan78
|
||||
@@ -2438,7 +2438,26 @@ static int lan78xx_phy_init(struct lan78
|
||||
mii_adv_to_linkmode_adv_t(fc, mii_adv);
|
||||
linkmode_or(phydev->advertising, fc, phydev->advertising);
|
||||
|
||||
|
||||
+1
-1
@@ -94,7 +94,7 @@ Signed-off-by: Richard Oliver <richard.oliver@raspberrypi.com>
|
||||
+
|
||||
--- a/MAINTAINERS
|
||||
+++ b/MAINTAINERS
|
||||
@@ -19355,6 +19355,11 @@ L: linux-edac@vger.kernel.org
|
||||
@@ -19368,6 +19368,11 @@ L: linux-edac@vger.kernel.org
|
||||
S: Maintained
|
||||
F: drivers/ras/amd/fmpm.c
|
||||
|
||||
|
||||
+1
-1
@@ -42,7 +42,7 @@ Signed-off-by: Richard Oliver <richard.oliver@raspberrypi.com>
|
||||
|
||||
--- a/MAINTAINERS
|
||||
+++ b/MAINTAINERS
|
||||
@@ -19359,6 +19359,7 @@ RASPBERRY PI RP2040 GPIO BRIDGE DRIVER
|
||||
@@ -19372,6 +19372,7 @@ RASPBERRY PI RP2040 GPIO BRIDGE DRIVER
|
||||
M: Raspberry Pi Kernel Maintenance <kernel-list@raspberrypi.com>
|
||||
S: Maintained
|
||||
F: Documentation/devicetree/bindings/spi/raspberrypi,rp2040-gpio-bridge.yaml
|
||||
|
||||
+1
-1
@@ -150,7 +150,7 @@ Signed-off-by: Richard Oliver <richard.oliver@raspberrypi.com>
|
||||
+
|
||||
--- a/MAINTAINERS
|
||||
+++ b/MAINTAINERS
|
||||
@@ -21604,6 +21604,13 @@ F: Documentation/devicetree/bindings/med
|
||||
@@ -21617,6 +21617,13 @@ F: Documentation/devicetree/bindings/med
|
||||
F: Documentation/devicetree/bindings/media/i2c/imx477.yaml
|
||||
F: drivers/media/i2c/imx477.c
|
||||
|
||||
|
||||
+1
-1
@@ -58,7 +58,7 @@ Signed-off-by: Naushir Patuck <naush@raspberrypi.com>
|
||||
|
||||
--- a/MAINTAINERS
|
||||
+++ b/MAINTAINERS
|
||||
@@ -21610,6 +21610,7 @@ L: linux-media@vger.kernel.org
|
||||
@@ -21623,6 +21623,7 @@ L: linux-media@vger.kernel.org
|
||||
S: Maintained
|
||||
T: git git://linuxtv.org/media_tree.git
|
||||
F: Documentation/devicetree/bindings/media/i2c/sony,imx500.yaml
|
||||
|
||||
+2
-2
@@ -102,7 +102,7 @@ Signed-off-by: Dave Stevenson <dave.stevenson@raspberrypi.com>
|
||||
/* Read-only, but we adjust it based on mode. */
|
||||
break;
|
||||
|
||||
@@ -1421,10 +1421,11 @@ static int ov5647_init_controls(struct o
|
||||
@@ -1423,10 +1423,11 @@ static int ov5647_init_controls(struct o
|
||||
sensor->mode->pixel_rate, 1,
|
||||
sensor->mode->pixel_rate);
|
||||
|
||||
@@ -116,7 +116,7 @@ Signed-off-by: Dave Stevenson <dave.stevenson@raspberrypi.com>
|
||||
hblank);
|
||||
|
||||
sensor->vblank = v4l2_ctrl_new_std(&sensor->ctrls, &ov5647_ctrl_ops,
|
||||
@@ -1458,7 +1459,6 @@ static int ov5647_init_controls(struct o
|
||||
@@ -1460,7 +1461,6 @@ static int ov5647_init_controls(struct o
|
||||
goto handler_free;
|
||||
|
||||
sensor->pixel_rate->flags |= V4L2_CTRL_FLAG_READ_ONLY;
|
||||
|
||||
+4
-4
@@ -70,7 +70,7 @@ Signed-off-by: Dave Stevenson <dave.stevenson@raspberrypi.com>
|
||||
@@ -439,6 +451,7 @@ static const struct ov5647_mode ov5647_m
|
||||
.height = 1920,
|
||||
},
|
||||
.pixel_rate = 55000000,
|
||||
.pixel_rate = 58333000,
|
||||
+ .link_freq_index = FREQ_INDEX_VGA,
|
||||
.hts = 1852,
|
||||
.vts = 0x1f8,
|
||||
@@ -91,9 +91,9 @@ Signed-off-by: Dave Stevenson <dave.stevenson@raspberrypi.com>
|
||||
- v4l2_ctrl_handler_init(&sensor->ctrls, 9);
|
||||
+ v4l2_ctrl_handler_init(&sensor->ctrls, 10);
|
||||
|
||||
v4l2_ctrl_new_std(&sensor->ctrls, &ov5647_ctrl_ops,
|
||||
V4L2_CID_AUTOGAIN, 0, 1, 1, 0);
|
||||
@@ -1302,6 +1317,14 @@ static int ov5647_init_controls(struct o
|
||||
sensor->ctrls.lock = &sensor->lock;
|
||||
|
||||
@@ -1304,6 +1319,14 @@ static int ov5647_init_controls(struct o
|
||||
if (sensor->vflip)
|
||||
sensor->vflip->flags |= V4L2_CTRL_FLAG_MODIFY_LAYOUT;
|
||||
|
||||
|
||||
+3
-3
@@ -84,9 +84,9 @@ Signed-off-by: Tvrtko Ursulin <tvrtko.ursulin@igalia.com>
|
||||
#include <linux/numa_memblks.h>
|
||||
+#include <linux/cma.h>
|
||||
#include <asm/numa.h>
|
||||
#include <acpi/acpi_numa.h>
|
||||
|
||||
#define FAKE_NODE_MIN_SIZE ((u64)32 << 20)
|
||||
@@ -51,6 +52,7 @@ static int __init emu_setup_memblk(struc
|
||||
@@ -52,6 +53,7 @@ static int __init emu_setup_memblk(struc
|
||||
{
|
||||
struct numa_memblk *eb = &ei->blk[ei->nr_blks];
|
||||
struct numa_memblk *pb = &pi->blk[phys_blk];
|
||||
@@ -94,7 +94,7 @@ Signed-off-by: Tvrtko Ursulin <tvrtko.ursulin@igalia.com>
|
||||
|
||||
if (ei->nr_blks >= NR_NODE_MEMBLKS) {
|
||||
pr_err("NUMA: Too many emulated memblks, failing emulation\n");
|
||||
@@ -62,6 +64,10 @@ static int __init emu_setup_memblk(struc
|
||||
@@ -63,6 +65,10 @@ static int __init emu_setup_memblk(struc
|
||||
eb->end = pb->start + size;
|
||||
eb->nid = nid;
|
||||
|
||||
|
||||
+4
-4
@@ -22,7 +22,7 @@ Signed-off-by: Jonathan Bell <jonathan@raspberrypi.com>
|
||||
|
||||
--- a/drivers/usb/dwc3/core.c
|
||||
+++ b/drivers/usb/dwc3/core.c
|
||||
@@ -1480,6 +1480,12 @@ static int dwc3_core_init(struct dwc3 *d
|
||||
@@ -1482,6 +1482,12 @@ static int dwc3_core_init(struct dwc3 *d
|
||||
if (dwc->dis_tx_ipgap_linecheck_quirk)
|
||||
reg |= DWC3_GUCTL1_TX_IPGAP_LINECHECK_DIS;
|
||||
|
||||
@@ -35,7 +35,7 @@ Signed-off-by: Jonathan Bell <jonathan@raspberrypi.com>
|
||||
if (dwc->parkmode_disable_ss_quirk)
|
||||
reg |= DWC3_GUCTL1_PARKMODE_DISABLE_SS;
|
||||
|
||||
@@ -1831,6 +1837,10 @@ static void dwc3_get_properties(struct d
|
||||
@@ -1833,6 +1839,10 @@ static void dwc3_get_properties(struct d
|
||||
"snps,resume-hs-terminations");
|
||||
dwc->ulpi_ext_vbus_drv = device_property_read_bool(dev,
|
||||
"snps,ulpi-ext-vbus-drv");
|
||||
@@ -57,7 +57,7 @@ Signed-off-by: Jonathan Bell <jonathan@raspberrypi.com>
|
||||
#define DWC3_GUCTL1_PARKMODE_DISABLE_SS BIT(17)
|
||||
#define DWC3_GUCTL1_PARKMODE_DISABLE_HS BIT(16)
|
||||
#define DWC3_GUCTL1_PARKMODE_DISABLE_FSLS BIT(15)
|
||||
@@ -1143,6 +1145,8 @@ struct dwc3_scratchpad_array {
|
||||
@@ -1145,6 +1147,8 @@ struct dwc3_scratchpad_array {
|
||||
* generation after resume from suspend.
|
||||
* @ulpi_ext_vbus_drv: Set to confiure the upli chip to drives CPEN pin
|
||||
* VBUS with an external supply.
|
||||
@@ -66,7 +66,7 @@ Signed-off-by: Jonathan Bell <jonathan@raspberrypi.com>
|
||||
* @parkmode_disable_ss_quirk: If set, disable park mode feature for all
|
||||
* Superspeed instances.
|
||||
* @parkmode_disable_hs_quirk: If set, disable park mode feature for all
|
||||
@@ -1386,6 +1390,8 @@ struct dwc3 {
|
||||
@@ -1391,6 +1395,8 @@ struct dwc3 {
|
||||
unsigned dis_tx_ipgap_linecheck_quirk:1;
|
||||
unsigned resume_hs_terminations:1;
|
||||
unsigned ulpi_ext_vbus_drv:1;
|
||||
|
||||
+3
-3
@@ -18,7 +18,7 @@ Signed-off-by: Phil Elwell <phil@raspberrypi.com>
|
||||
|
||||
--- a/drivers/nvme/host/pci.c
|
||||
+++ b/drivers/nvme/host/pci.c
|
||||
@@ -2106,6 +2106,7 @@ static void nvme_free_host_mem(struct nv
|
||||
@@ -2109,6 +2109,7 @@ static void nvme_free_host_mem(struct nv
|
||||
dev->nr_host_mem_descs = 0;
|
||||
}
|
||||
|
||||
@@ -26,7 +26,7 @@ Signed-off-by: Phil Elwell <phil@raspberrypi.com>
|
||||
static int __nvme_alloc_host_mem(struct nvme_dev *dev, u64 preferred,
|
||||
u32 chunk_size)
|
||||
{
|
||||
@@ -2174,9 +2175,11 @@ out:
|
||||
@@ -2177,9 +2178,11 @@ out:
|
||||
dev->host_mem_descs = NULL;
|
||||
return -ENOMEM;
|
||||
}
|
||||
@@ -38,7 +38,7 @@ Signed-off-by: Phil Elwell <phil@raspberrypi.com>
|
||||
u64 min_chunk = min_t(u64, preferred, PAGE_SIZE * MAX_ORDER_NR_PAGES);
|
||||
u64 hmminds = max_t(u32, dev->ctrl.hmminds * 4096, PAGE_SIZE * 2);
|
||||
u64 chunk_size;
|
||||
@@ -2189,6 +2192,7 @@ static int nvme_alloc_host_mem(struct nv
|
||||
@@ -2192,6 +2195,7 @@ static int nvme_alloc_host_mem(struct nv
|
||||
nvme_free_host_mem(dev);
|
||||
}
|
||||
}
|
||||
|
||||
+1
-1
@@ -12,7 +12,7 @@ Signed-off-by: Phil Elwell <phil@raspberrypi.com>
|
||||
|
||||
--- a/drivers/pci/probe.c
|
||||
+++ b/drivers/pci/probe.c
|
||||
@@ -992,9 +992,6 @@ static int pci_register_host_bridge(stru
|
||||
@@ -994,9 +994,6 @@ static int pci_register_host_bridge(stru
|
||||
else
|
||||
pr_info("PCI host bridge to bus %s\n", name);
|
||||
|
||||
|
||||
+1
-1
@@ -36,7 +36,7 @@ Signed-off-by: Dave Stevenson <dave.stevenson@raspberrypi.com>
|
||||
|
||||
--- a/MAINTAINERS
|
||||
+++ b/MAINTAINERS
|
||||
@@ -19361,6 +19361,16 @@ S: Maintained
|
||||
@@ -19374,6 +19374,16 @@ S: Maintained
|
||||
F: Documentation/devicetree/bindings/spi/raspberrypi,rp2040-gpio-bridge.yaml
|
||||
F: drivers/spi/spi-rp2040-gpio-bridge.c
|
||||
|
||||
|
||||
+2
-2
@@ -301,7 +301,7 @@ Signed-off-by: Maíra Canal <mcanal@igalia.com>
|
||||
mmu_debug = V3D_READ(V3D_MMU_DEBUG_INFO);
|
||||
mask = DMA_BIT_MASK(30 + V3D_GET_FIELD(mmu_debug, V3D_MMU_PA_WIDTH));
|
||||
ret = dma_set_mask_and_coherent(dev, mask);
|
||||
@@ -325,6 +366,11 @@ static int v3d_platform_drm_probe(struct
|
||||
@@ -327,6 +368,11 @@ static int v3d_platform_drm_probe(struct
|
||||
ident1 = V3D_READ(V3D_HUB_IDENT1);
|
||||
v3d->ver = (V3D_GET_FIELD(ident1, V3D_HUB_IDENT1_TVER) * 10 +
|
||||
V3D_GET_FIELD(ident1, V3D_HUB_IDENT1_REV));
|
||||
@@ -313,7 +313,7 @@ Signed-off-by: Maíra Canal <mcanal@igalia.com>
|
||||
v3d->cores = V3D_GET_FIELD(ident1, V3D_HUB_IDENT1_NCORES);
|
||||
WARN_ON(v3d->cores > 1); /* multicore not yet implemented */
|
||||
|
||||
@@ -377,7 +423,7 @@ static int v3d_platform_drm_probe(struct
|
||||
@@ -379,7 +425,7 @@ static int v3d_platform_drm_probe(struct
|
||||
v3d->clk_down_rate =
|
||||
(clk_get_rate(clk_get_parent(v3d->clk)) / (1 << 4)) + 10000;
|
||||
|
||||
|
||||
+1
-1
@@ -29,7 +29,7 @@ Signed-off-by: Maíra Canal <mcanal@igalia.com>
|
||||
|
||||
--- a/drivers/gpu/drm/v3d/v3d_drv.c
|
||||
+++ b/drivers/gpu/drm/v3d/v3d_drv.c
|
||||
@@ -485,6 +485,8 @@ static void v3d_platform_drm_remove(stru
|
||||
@@ -487,6 +487,8 @@ static void v3d_platform_drm_remove(stru
|
||||
dma_free_wc(v3d->drm.dev, 4096, v3d->mmu_scratch,
|
||||
v3d->mmu_scratch_paddr);
|
||||
|
||||
|
||||
+7
-7
@@ -24,9 +24,9 @@ Reviewed-by: Florian Fainelli <florian.fainelli@broadcom.com>
|
||||
|
||||
--- a/drivers/pci/controller/pcie-brcmstb.c
|
||||
+++ b/drivers/pci/controller/pcie-brcmstb.c
|
||||
@@ -55,6 +55,10 @@
|
||||
#define PCIE_RC_DL_MDIO_WR_DATA 0x1104
|
||||
#define PCIE_RC_DL_MDIO_RD_DATA 0x1108
|
||||
@@ -58,6 +58,10 @@
|
||||
#define PCIE_RC_PL_REG_PHY_CTL_1 0x1804
|
||||
#define PCIE_RC_PL_REG_PHY_CTL_1_REG_P2_POWERDOWN_ENA_NOSYNC_MASK 0x8
|
||||
|
||||
+#define PCIE_RC_PL_PHY_CTL_15 0x184c
|
||||
+#define PCIE_RC_PL_PHY_CTL_15_DIS_PLL_PD_MASK 0x400000
|
||||
@@ -35,7 +35,7 @@ Reviewed-by: Florian Fainelli <florian.fainelli@broadcom.com>
|
||||
#define PCIE_MISC_MISC_CTRL 0x4008
|
||||
#define PCIE_MISC_MISC_CTRL_PCIE_RCB_64B_MODE_MASK 0x80
|
||||
#define PCIE_MISC_MISC_CTRL_PCIE_RCB_MPS_MODE_MASK 0x400
|
||||
@@ -251,6 +255,7 @@ struct pcie_cfg_data {
|
||||
@@ -254,6 +258,7 @@ struct pcie_cfg_data {
|
||||
u8 num_inbound_wins;
|
||||
int (*perst_set)(struct brcm_pcie *pcie, u32 val);
|
||||
int (*bridge_sw_init_set)(struct brcm_pcie *pcie, u32 val);
|
||||
@@ -43,7 +43,7 @@ Reviewed-by: Florian Fainelli <florian.fainelli@broadcom.com>
|
||||
};
|
||||
|
||||
struct subdev_regulators {
|
||||
@@ -826,6 +831,38 @@ static int brcm_pcie_perst_set_generic(s
|
||||
@@ -829,6 +834,38 @@ static int brcm_pcie_perst_set_generic(s
|
||||
return 0;
|
||||
}
|
||||
|
||||
@@ -82,7 +82,7 @@ Reviewed-by: Florian Fainelli <florian.fainelli@broadcom.com>
|
||||
static void add_inbound_win(struct inbound_win *b, u8 *count, u64 size,
|
||||
u64 cpu_addr, u64 pci_offset)
|
||||
{
|
||||
@@ -1189,6 +1226,12 @@ static int brcm_pcie_setup(struct brcm_p
|
||||
@@ -1210,6 +1247,12 @@ static int brcm_pcie_setup(struct brcm_p
|
||||
PCIE_RC_CFG_VENDOR_VENDOR_SPECIFIC_REG1_ENDIAN_MODE_BAR2_MASK);
|
||||
writel(tmp, base + PCIE_RC_CFG_VENDOR_VENDOR_SPECIFIC_REG1);
|
||||
|
||||
@@ -95,7 +95,7 @@ Reviewed-by: Florian Fainelli <florian.fainelli@broadcom.com>
|
||||
return 0;
|
||||
}
|
||||
|
||||
@@ -1717,6 +1760,7 @@ static const struct pcie_cfg_data bcm271
|
||||
@@ -1738,6 +1781,7 @@ static const struct pcie_cfg_data bcm271
|
||||
.soc_base = BCM7712,
|
||||
.perst_set = brcm_pcie_perst_set_7278,
|
||||
.bridge_sw_init_set = brcm_pcie_bridge_sw_init_set_generic,
|
||||
|
||||
+5
-5
@@ -20,7 +20,7 @@ Reviewed-by: Florian Fainelli <florian.fainelli@broadcom.com>
|
||||
|
||||
--- a/drivers/pci/controller/pcie-brcmstb.c
|
||||
+++ b/drivers/pci/controller/pcie-brcmstb.c
|
||||
@@ -150,9 +150,6 @@
|
||||
@@ -153,9 +153,6 @@
|
||||
#define MSI_INT_MASK_SET 0x10
|
||||
#define MSI_INT_MASK_CLR 0x14
|
||||
|
||||
@@ -30,7 +30,7 @@ Reviewed-by: Florian Fainelli <florian.fainelli@broadcom.com>
|
||||
#define PCIE_RGR1_SW_INIT_1_PERST_MASK 0x1
|
||||
#define PCIE_RGR1_SW_INIT_1_PERST_SHIFT 0x0
|
||||
|
||||
@@ -727,8 +724,8 @@ static void __iomem *brcm_pcie_map_bus(s
|
||||
@@ -730,8 +727,8 @@ static void __iomem *brcm_pcie_map_bus(s
|
||||
|
||||
/* For devices, write to the config space index register */
|
||||
idx = PCIE_ECAM_OFFSET(bus->number, devfn, 0);
|
||||
@@ -41,7 +41,7 @@ Reviewed-by: Florian Fainelli <florian.fainelli@broadcom.com>
|
||||
}
|
||||
|
||||
static void __iomem *brcm7425_pcie_map_bus(struct pci_bus *bus,
|
||||
@@ -1711,7 +1708,7 @@ static void brcm_pcie_remove(struct plat
|
||||
@@ -1732,7 +1729,7 @@ static void brcm_pcie_remove(struct plat
|
||||
static const int pcie_offsets[] = {
|
||||
[RGR1_SW_INIT_1] = 0x9210,
|
||||
[EXT_CFG_INDEX] = 0x9000,
|
||||
@@ -50,7 +50,7 @@ Reviewed-by: Florian Fainelli <florian.fainelli@broadcom.com>
|
||||
[PCIE_HARD_DEBUG] = 0x4204,
|
||||
[PCIE_INTR2_CPU_BASE] = 0x4300,
|
||||
};
|
||||
@@ -1719,7 +1716,7 @@ static const int pcie_offsets[] = {
|
||||
@@ -1740,7 +1737,7 @@ static const int pcie_offsets[] = {
|
||||
static const int pcie_offsets_bcm7278[] = {
|
||||
[RGR1_SW_INIT_1] = 0xc010,
|
||||
[EXT_CFG_INDEX] = 0x9000,
|
||||
@@ -59,7 +59,7 @@ Reviewed-by: Florian Fainelli <florian.fainelli@broadcom.com>
|
||||
[PCIE_HARD_DEBUG] = 0x4204,
|
||||
[PCIE_INTR2_CPU_BASE] = 0x4300,
|
||||
};
|
||||
@@ -1733,8 +1730,9 @@ static const int pcie_offsets_bcm7425[]
|
||||
@@ -1754,8 +1751,9 @@ static const int pcie_offsets_bcm7425[]
|
||||
};
|
||||
|
||||
static const int pcie_offsets_bcm7712[] = {
|
||||
|
||||
+2
-2
@@ -25,7 +25,7 @@ Reviewed-by: Florian Fainelli <florian.fainelli@broadcom.com>
|
||||
|
||||
--- a/drivers/pci/controller/pcie-brcmstb.c
|
||||
+++ b/drivers/pci/controller/pcie-brcmstb.c
|
||||
@@ -175,8 +175,9 @@
|
||||
@@ -178,8 +178,9 @@
|
||||
#define MDIO_PORT0 0x0
|
||||
#define MDIO_DATA_MASK 0x7fffffff
|
||||
#define MDIO_PORT_MASK 0xf0000
|
||||
@@ -36,7 +36,7 @@ Reviewed-by: Florian Fainelli <florian.fainelli@broadcom.com>
|
||||
#define MDIO_CMD_READ 0x1
|
||||
#define MDIO_CMD_WRITE 0x0
|
||||
#define MDIO_DATA_DONE_MASK 0x80000000
|
||||
@@ -327,6 +328,7 @@ static u32 brcm_pcie_mdio_form_pkt(int p
|
||||
@@ -330,6 +331,7 @@ static u32 brcm_pcie_mdio_form_pkt(int p
|
||||
{
|
||||
u32 pkt = 0;
|
||||
|
||||
|
||||
+1
-1
@@ -16,7 +16,7 @@ Reviewed-by: Florian Fainelli <florian.fainelli@broadcom.com>
|
||||
|
||||
--- a/drivers/pci/controller/pcie-brcmstb.c
|
||||
+++ b/drivers/pci/controller/pcie-brcmstb.c
|
||||
@@ -559,7 +559,7 @@ static int brcm_irq_domain_alloc(struct
|
||||
@@ -562,7 +562,7 @@ static int brcm_irq_domain_alloc(struct
|
||||
return hwirq;
|
||||
|
||||
for (i = 0; i < nr_irqs; i++)
|
||||
|
||||
+2
-2
@@ -18,7 +18,7 @@ Signed-off-by: Jonathan Bell <jonathan@raspberrypi.com>
|
||||
|
||||
--- a/drivers/pci/controller/pcie-brcmstb.c
|
||||
+++ b/drivers/pci/controller/pcie-brcmstb.c
|
||||
@@ -209,6 +209,17 @@
|
||||
@@ -212,6 +212,17 @@
|
||||
#define PCIE_DVT_PMU_PCIE_PHY_CTRL_DAST_PWRDN_MASK 0x1
|
||||
#define PCIE_DVT_PMU_PCIE_PHY_CTRL_DAST_PWRDN_SHIFT 0x0
|
||||
|
||||
@@ -36,7 +36,7 @@ Signed-off-by: Jonathan Bell <jonathan@raspberrypi.com>
|
||||
/* Forward declarations */
|
||||
struct brcm_pcie;
|
||||
|
||||
@@ -859,6 +870,30 @@ static int brcm_pcie_post_setup_bcm2712(
|
||||
@@ -862,6 +873,30 @@ static int brcm_pcie_post_setup_bcm2712(
|
||||
tmp |= 0x12;
|
||||
writel(tmp, pcie->base + PCIE_RC_PL_PHY_CTL_15);
|
||||
|
||||
|
||||
+2
-2
@@ -20,7 +20,7 @@ Signed-off-by: Jonathan Bell <jonathan@raspberrypi.com>
|
||||
|
||||
--- a/drivers/pci/controller/pcie-brcmstb.c
|
||||
+++ b/drivers/pci/controller/pcie-brcmstb.c
|
||||
@@ -1358,7 +1358,7 @@ static int brcm_pcie_start_link(struct b
|
||||
@@ -1375,7 +1375,7 @@ static int brcm_pcie_start_link(struct b
|
||||
{
|
||||
struct device *dev = pcie->dev;
|
||||
void __iomem *base = pcie->base;
|
||||
@@ -29,7 +29,7 @@ Signed-off-by: Jonathan Bell <jonathan@raspberrypi.com>
|
||||
bool ssc_good = false;
|
||||
int ret, i;
|
||||
|
||||
@@ -1407,6 +1407,17 @@ static int brcm_pcie_start_link(struct b
|
||||
@@ -1424,6 +1424,17 @@ static int brcm_pcie_start_link(struct b
|
||||
pci_speed_string(pcie_link_speed[cls]), nlw,
|
||||
ssc_good ? "(SSC)" : "(!SSC)");
|
||||
|
||||
|
||||
+2
-2
@@ -29,7 +29,7 @@ Signed-off-by: Jonathan Bell <jonathan@raspberrypi.com>
|
||||
struct pcie_cfg_data {
|
||||
const int *offsets;
|
||||
const enum pcie_soc_base soc_base;
|
||||
@@ -1811,7 +1817,7 @@ static const struct pcie_cfg_data bcm271
|
||||
@@ -1828,7 +1834,7 @@ static const struct pcie_cfg_data bcm271
|
||||
.perst_set = brcm_pcie_perst_set_7278,
|
||||
.bridge_sw_init_set = brcm_pcie_bridge_sw_init_set_generic,
|
||||
.post_setup = brcm_pcie_post_setup_bcm2712,
|
||||
@@ -38,7 +38,7 @@ Signed-off-by: Jonathan Bell <jonathan@raspberrypi.com>
|
||||
.num_inbound_wins = 10,
|
||||
};
|
||||
|
||||
@@ -1928,7 +1934,8 @@ static int brcm_pcie_probe(struct platfo
|
||||
@@ -1945,7 +1951,8 @@ static int brcm_pcie_probe(struct platfo
|
||||
ret = of_pci_get_max_link_speed(np);
|
||||
pcie->gen = (ret < 0) ? 0 : ret;
|
||||
|
||||
|
||||
+2
-2
@@ -44,7 +44,7 @@ Signed-off-by: Jonathan Bell <jonathan@raspberrypi.com>
|
||||
};
|
||||
|
||||
static inline bool is_bmips(const struct brcm_pcie *pcie)
|
||||
@@ -1487,13 +1489,32 @@ static int brcm_pcie_start_link(struct b
|
||||
@@ -1504,13 +1506,32 @@ static int brcm_pcie_start_link(struct b
|
||||
u16 nlw, cls, lnksta, tmp16;
|
||||
bool ssc_good = false;
|
||||
int ret, i;
|
||||
@@ -78,7 +78,7 @@ Signed-off-by: Jonathan Bell <jonathan@raspberrypi.com>
|
||||
if (ret)
|
||||
return ret;
|
||||
|
||||
@@ -2057,6 +2078,8 @@ static int brcm_pcie_probe(struct platfo
|
||||
@@ -2074,6 +2095,8 @@ static int brcm_pcie_probe(struct platfo
|
||||
pcie->ssc = !(pcie->cfg->quirks & CFG_QUIRK_NO_SSC) &&
|
||||
of_property_read_bool(np, "brcm,enable-ssc");
|
||||
|
||||
|
||||
+1
-1
@@ -19,7 +19,7 @@ Signed-off-by: Phil Elwell <phil@raspberrypi.com>
|
||||
|
||||
--- a/drivers/mmc/host/sdhci-of-dwcmshc.c
|
||||
+++ b/drivers/mmc/host/sdhci-of-dwcmshc.c
|
||||
@@ -1250,13 +1250,15 @@ static const struct dwcmshc_pltfm_data s
|
||||
@@ -1257,13 +1257,15 @@ static const struct dwcmshc_pltfm_data s
|
||||
};
|
||||
#endif
|
||||
|
||||
|
||||
+1
-1
@@ -40,7 +40,7 @@ Signed-off-by: Jonathan Bell <jonathan@raspberrypi.com>
|
||||
PCIE_MISC_HARD_PCIE_HARD_DEBUG_L1SS_ENABLE_MASK)
|
||||
|
||||
#define PCIE_MISC_UBUS_BAR1_CONFIG_REMAP 0x40ac
|
||||
@@ -1470,12 +1474,21 @@ static void brcm_config_clkreq(struct br
|
||||
@@ -1487,12 +1491,21 @@ static void brcm_config_clkreq(struct br
|
||||
|
||||
} else {
|
||||
/*
|
||||
|
||||
+1
-1
@@ -18,7 +18,7 @@ Signed-off-by: Jonathan Bell <jonathan@raspberrypi.com>
|
||||
|
||||
--- a/drivers/pci/quirks.c
|
||||
+++ b/drivers/pci/quirks.c
|
||||
@@ -6256,6 +6256,22 @@ DECLARE_PCI_FIXUP_HEADER(PCI_VENDOR_ID_I
|
||||
@@ -6283,6 +6283,22 @@ DECLARE_PCI_FIXUP_HEADER(PCI_VENDOR_ID_I
|
||||
DECLARE_PCI_FIXUP_HEADER(PCI_VENDOR_ID_INTEL, 0x56b1, aspm_l1_acceptable_latency);
|
||||
DECLARE_PCI_FIXUP_HEADER(PCI_VENDOR_ID_INTEL, 0x56c0, aspm_l1_acceptable_latency);
|
||||
DECLARE_PCI_FIXUP_HEADER(PCI_VENDOR_ID_INTEL, 0x56c1, aspm_l1_acceptable_latency);
|
||||
|
||||
+1
-26
@@ -17,16 +17,7 @@ Signed-off-by: Josh Martinez <8892161+joshermar@users.noreply.github.com>
|
||||
|
||||
--- a/drivers/hwmon/aht10.c
|
||||
+++ b/drivers/hwmon/aht10.c
|
||||
@@ -37,6 +37,8 @@
|
||||
#define AHT10_CMD_MEAS 0b10101100
|
||||
#define AHT10_CMD_RST 0b10111010
|
||||
|
||||
+#define AHT20_CMD_INIT 0b10111110
|
||||
+
|
||||
/*
|
||||
* Flags in the answer byte/command
|
||||
*/
|
||||
@@ -59,6 +61,7 @@ MODULE_DEVICE_TABLE(i2c, aht10_id);
|
||||
@@ -64,6 +64,7 @@ MODULE_DEVICE_TABLE(i2c, aht10_id);
|
||||
|
||||
static const struct of_device_id aht10_of_id[] = {
|
||||
{ .compatible = "aosong,aht10", },
|
||||
@@ -34,19 +25,3 @@ Signed-off-by: Josh Martinez <8892161+joshermar@users.noreply.github.com>
|
||||
{ }
|
||||
};
|
||||
MODULE_DEVICE_TABLE(of, aht10_of_id);
|
||||
@@ -107,8 +110,13 @@ struct aht10_data {
|
||||
*/
|
||||
static int aht10_init(struct aht10_data *data)
|
||||
{
|
||||
- const u8 cmd_init[] = {AHT10_CMD_INIT, AHT10_CAL_ENABLED | AHT10_MODE_CYC,
|
||||
- 0x00};
|
||||
+ u8 cmd_init[] = {AHT10_CMD_INIT, AHT10_CAL_ENABLED | AHT10_MODE_CYC, 0x00};
|
||||
+
|
||||
+ if (data->crc8) { /* AHT20 */
|
||||
+ cmd_init[0] = AHT20_CMD_INIT;
|
||||
+ cmd_init[1] = AHT10_CAL_ENABLED;
|
||||
+ }
|
||||
+
|
||||
int res;
|
||||
u8 status;
|
||||
struct i2c_client *client = data->client;
|
||||
|
||||
+7
-7
@@ -190,7 +190,7 @@ Signed-off-by: Jonathan Bell <jonathan@raspberrypi.com>
|
||||
};
|
||||
|
||||
static inline bool is_bmips(const struct brcm_pcie *pcie)
|
||||
@@ -1495,6 +1624,133 @@ static void brcm_config_clkreq(struct br
|
||||
@@ -1512,6 +1641,133 @@ static void brcm_config_clkreq(struct br
|
||||
dev_info(pcie->dev, "clkreq-mode set to %s\n", mode);
|
||||
}
|
||||
|
||||
@@ -324,7 +324,7 @@ Signed-off-by: Jonathan Bell <jonathan@raspberrypi.com>
|
||||
static int brcm_pcie_start_link(struct brcm_pcie *pcie)
|
||||
{
|
||||
struct device *dev = pcie->dev;
|
||||
@@ -1508,6 +1764,8 @@ static int brcm_pcie_start_link(struct b
|
||||
@@ -1525,6 +1781,8 @@ static int brcm_pcie_start_link(struct b
|
||||
if (pcie->gen)
|
||||
brcm_pcie_set_gen(pcie, pcie->gen);
|
||||
|
||||
@@ -333,7 +333,7 @@ Signed-off-by: Jonathan Bell <jonathan@raspberrypi.com>
|
||||
/* Unassert the fundamental reset */
|
||||
if (pcie->tperst_clk_ms) {
|
||||
/*
|
||||
@@ -1531,6 +1789,8 @@ static int brcm_pcie_start_link(struct b
|
||||
@@ -1548,6 +1806,8 @@ static int brcm_pcie_start_link(struct b
|
||||
if (ret)
|
||||
return ret;
|
||||
|
||||
@@ -342,7 +342,7 @@ Signed-off-by: Jonathan Bell <jonathan@raspberrypi.com>
|
||||
/*
|
||||
* Wait for 100ms after PERST# deassertion; see PCIe CEM specification
|
||||
* sections 2.2, PCIe r5.0, 6.6.1.
|
||||
@@ -1567,6 +1827,9 @@ static int brcm_pcie_start_link(struct b
|
||||
@@ -1584,6 +1844,9 @@ static int brcm_pcie_start_link(struct b
|
||||
pci_speed_string(pcie_link_speed[cls]), nlw,
|
||||
ssc_good ? "(SSC)" : "(!SSC)");
|
||||
|
||||
@@ -352,7 +352,7 @@ Signed-off-by: Jonathan Bell <jonathan@raspberrypi.com>
|
||||
/*
|
||||
* RootCtl bits are reset by perst_n, which undoes pci_enable_crs()
|
||||
* called prior to pci_add_new_bus() during probe. Re-enable here.
|
||||
@@ -1898,6 +2161,7 @@ err_disable_clk:
|
||||
@@ -1915,6 +2178,7 @@ err_disable_clk:
|
||||
|
||||
static void __brcm_pcie_remove(struct brcm_pcie *pcie)
|
||||
{
|
||||
@@ -360,7 +360,7 @@ Signed-off-by: Jonathan Bell <jonathan@raspberrypi.com>
|
||||
brcm_msi_remove(pcie);
|
||||
brcm_pcie_turn_off(pcie);
|
||||
if (brcm_phy_stop(pcie))
|
||||
@@ -2054,6 +2318,98 @@ static struct pci_ops brcm7425_pcie_ops
|
||||
@@ -2071,6 +2335,98 @@ static struct pci_ops brcm7425_pcie_ops
|
||||
.remove_bus = brcm_pcie_remove_bus,
|
||||
};
|
||||
|
||||
@@ -459,7 +459,7 @@ Signed-off-by: Jonathan Bell <jonathan@raspberrypi.com>
|
||||
static int brcm_pcie_probe(struct platform_device *pdev)
|
||||
{
|
||||
struct device_node *np = pdev->dev.of_node;
|
||||
@@ -2076,6 +2432,19 @@ static int brcm_pcie_probe(struct platfo
|
||||
@@ -2093,6 +2449,19 @@ static int brcm_pcie_probe(struct platfo
|
||||
pcie->dev = &pdev->dev;
|
||||
pcie->np = np;
|
||||
pcie->cfg = data;
|
||||
|
||||
+1
-1
@@ -17,7 +17,7 @@ Signed-off-by: Maíra Canal <mcanal@igalia.com>
|
||||
|
||||
--- a/drivers/gpu/drm/v3d/v3d_drv.c
|
||||
+++ b/drivers/gpu/drm/v3d/v3d_drv.c
|
||||
@@ -395,21 +395,18 @@ static int v3d_platform_drm_probe(struct
|
||||
@@ -397,21 +397,18 @@ static int v3d_platform_drm_probe(struct
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
+62
@@ -0,0 +1,62 @@
|
||||
From 06e92afca89075628b12c9b4085b4cc7320081ac Mon Sep 17 00:00:00 2001
|
||||
From: Jascha Sundaresan <flizarthanon@gmail.com>
|
||||
Date: Thu, 23 Oct 2025 03:07:41 +0400
|
||||
Subject: nvmem: layouts: u-boot-env: add optional "env-size" property
|
||||
|
||||
Some devices reserve a larger NVMEM region for the U-Boot environment
|
||||
than the actual environment data length used by U-Boot itself. The CRC32
|
||||
in the U-Boot header is calculated over the smaller data length, causing
|
||||
CRC validation to fail when Linux reads the full partition.
|
||||
|
||||
Allow an optional device tree property "env-size" to specify the
|
||||
environment data size to use for CRC computation.
|
||||
|
||||
v2: add missing $ref line to DT binding
|
||||
|
||||
Signed-off-by: Jascha Sundaresan <flizarthanon@gmail.com>
|
||||
Reviewed-by: Rob Herring (Arm) <robh@kernel.org>
|
||||
Signed-off-by: Srinivas Kandagatla <srini@kernel.org>
|
||||
---
|
||||
Documentation/devicetree/bindings/nvmem/layouts/u-boot,env.yaml | 7 +++++++
|
||||
drivers/nvmem/layouts/u-boot-env.c | 4 +++-
|
||||
2 files changed, 10 insertions(+), 1 deletion(-)
|
||||
|
||||
--- a/Documentation/devicetree/bindings/nvmem/layouts/u-boot,env.yaml
|
||||
+++ b/Documentation/devicetree/bindings/nvmem/layouts/u-boot,env.yaml
|
||||
@@ -46,6 +46,12 @@ properties:
|
||||
type: object
|
||||
description: Command to use for automatic booting
|
||||
|
||||
+ env-size:
|
||||
+ description:
|
||||
+ Size in bytes of the environment data used by U-Boot for CRC
|
||||
+ calculation. If omitted, the full NVMEM region size is used.
|
||||
+ $ref: /schemas/types.yaml#/definitions/uint32
|
||||
+
|
||||
ethaddr:
|
||||
type: object
|
||||
description: Ethernet interfaces base MAC address.
|
||||
@@ -104,6 +110,7 @@ examples:
|
||||
|
||||
partition-u-boot-env {
|
||||
compatible = "brcm,env";
|
||||
+ env-size = <0x20000>;
|
||||
|
||||
ethaddr {
|
||||
};
|
||||
--- a/drivers/nvmem/layouts/u-boot-env.c
|
||||
+++ b/drivers/nvmem/layouts/u-boot-env.c
|
||||
@@ -99,10 +99,12 @@ int u_boot_env_parse(struct device *dev,
|
||||
uint32_t crc32;
|
||||
uint32_t calc;
|
||||
uint8_t *buf;
|
||||
+ u32 env_size;
|
||||
int bytes;
|
||||
int err;
|
||||
|
||||
- dev_size = nvmem_dev_size(nvmem);
|
||||
+ dev_size = device_property_read_u32(dev, "env-size", &env_size) ?
|
||||
+ nvmem_dev_size(nvmem) : (size_t)env_size;
|
||||
|
||||
buf = kzalloc(dev_size, GFP_KERNEL);
|
||||
if (!buf) {
|
||||
+63
@@ -0,0 +1,63 @@
|
||||
From 71e5da46e78c1cd24e2feed251a2845327447ad8 Mon Sep 17 00:00:00 2001
|
||||
From: Kees Cook <kees@kernel.org>
|
||||
Date: Wed, 21 May 2025 23:27:04 +0200
|
||||
Subject: wireguard: global: add __nonstring annotations for unterminated
|
||||
strings
|
||||
|
||||
When a character array without a terminating NUL character has a static
|
||||
initializer, GCC 15's -Wunterminated-string-initialization will only
|
||||
warn if the array lacks the "nonstring" attribute[1]. Mark the arrays
|
||||
with __nonstring to correctly identify the char array as "not a C string"
|
||||
and thereby eliminate the warning:
|
||||
|
||||
../drivers/net/wireguard/cookie.c:29:56: warning: initializer-string for array of 'unsigned char' truncates NUL terminator but destination lacks 'nonstring' attribute (9 chars into 8 available) [-Wunterminated-string-initialization]
|
||||
29 | static const u8 mac1_key_label[COOKIE_KEY_LABEL_LEN] = "mac1----";
|
||||
| ^~~~~~~~~~
|
||||
../drivers/net/wireguard/cookie.c:30:58: warning: initializer-string for array of 'unsigned char' truncates NUL terminator but destination lacks 'nonstring' attribute (9 chars into 8 available) [-Wunterminated-string-initialization]
|
||||
30 | static const u8 cookie_key_label[COOKIE_KEY_LABEL_LEN] = "cookie--";
|
||||
| ^~~~~~~~~~
|
||||
../drivers/net/wireguard/noise.c:28:38: warning: initializer-string for array of 'unsigned char' truncates NUL terminator but destination lacks 'nonstring' attribute (38 chars into 37 available) [-Wunterminated-string-initialization]
|
||||
28 | static const u8 handshake_name[37] = "Noise_IKpsk2_25519_ChaChaPoly_BLAKE2s";
|
||||
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
../drivers/net/wireguard/noise.c:29:39: warning: initializer-string for array of 'unsigned char' truncates NUL terminator but destination lacks 'nonstring' attribute (35 chars into 34 available) [-Wunterminated-string-initialization]
|
||||
29 | static const u8 identifier_name[34] = "WireGuard v1 zx2c4 Jason@zx2c4.com";
|
||||
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
The arrays are always used with their fixed size, so use __nonstring.
|
||||
|
||||
Link: https://gcc.gnu.org/bugzilla/show_bug.cgi?id=117178 [1]
|
||||
Signed-off-by: Kees Cook <kees@kernel.org>
|
||||
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
|
||||
Link: https://patch.msgid.link/20250521212707.1767879-3-Jason@zx2c4.com
|
||||
Signed-off-by: Paolo Abeni <pabeni@redhat.com>
|
||||
---
|
||||
drivers/net/wireguard/cookie.c | 4 ++--
|
||||
drivers/net/wireguard/noise.c | 4 ++--
|
||||
2 files changed, 4 insertions(+), 4 deletions(-)
|
||||
|
||||
--- a/drivers/net/wireguard/cookie.c
|
||||
+++ b/drivers/net/wireguard/cookie.c
|
||||
@@ -26,8 +26,8 @@ void wg_cookie_checker_init(struct cooki
|
||||
}
|
||||
|
||||
enum { COOKIE_KEY_LABEL_LEN = 8 };
|
||||
-static const u8 mac1_key_label[COOKIE_KEY_LABEL_LEN] = "mac1----";
|
||||
-static const u8 cookie_key_label[COOKIE_KEY_LABEL_LEN] = "cookie--";
|
||||
+static const u8 mac1_key_label[COOKIE_KEY_LABEL_LEN] __nonstring = "mac1----";
|
||||
+static const u8 cookie_key_label[COOKIE_KEY_LABEL_LEN] __nonstring = "cookie--";
|
||||
|
||||
static void precompute_key(u8 key[NOISE_SYMMETRIC_KEY_LEN],
|
||||
const u8 pubkey[NOISE_PUBLIC_KEY_LEN],
|
||||
--- a/drivers/net/wireguard/noise.c
|
||||
+++ b/drivers/net/wireguard/noise.c
|
||||
@@ -25,8 +25,8 @@
|
||||
* <- e, ee, se, psk, {}
|
||||
*/
|
||||
|
||||
-static const u8 handshake_name[37] = "Noise_IKpsk2_25519_ChaChaPoly_BLAKE2s";
|
||||
-static const u8 identifier_name[34] = "WireGuard v1 zx2c4 Jason@zx2c4.com";
|
||||
+static const u8 handshake_name[37] __nonstring = "Noise_IKpsk2_25519_ChaChaPoly_BLAKE2s";
|
||||
+static const u8 identifier_name[34] __nonstring = "WireGuard v1 zx2c4 Jason@zx2c4.com";
|
||||
static u8 handshake_init_hash[NOISE_HASH_LEN] __ro_after_init;
|
||||
static u8 handshake_init_chaining_key[NOISE_HASH_LEN] __ro_after_init;
|
||||
static atomic64_t keypair_counter = ATOMIC64_INIT(0);
|
||||
@@ -1,117 +0,0 @@
|
||||
From 4f3d1be4c2f8a22470f3625cbc778ba2e2130def Mon Sep 17 00:00:00 2001
|
||||
From: Vincent Mailhol <mailhol.vincent@wanadoo.fr>
|
||||
Date: Thu, 14 Nov 2024 02:18:32 +0900
|
||||
Subject: [PATCH] compiler.h: add const_true()
|
||||
|
||||
__builtin_constant_p() is known for not always being able to produce
|
||||
constant expression [1] which led to the introduction of
|
||||
__is_constexpr() [2]. Because of its dependency on
|
||||
__builtin_constant_p(), statically_true() suffers from the same
|
||||
issues.
|
||||
|
||||
For example:
|
||||
|
||||
void foo(int a)
|
||||
{
|
||||
/* fail on GCC */
|
||||
BUILD_BUG_ON_ZERO(statically_true(a));
|
||||
|
||||
/* fail on both clang and GCC */
|
||||
static char arr[statically_true(a) ? 1 : 2];
|
||||
}
|
||||
|
||||
For the same reasons why __is_constexpr() was created to cover
|
||||
__builtin_constant_p() edge cases, __is_constexpr() can be used to
|
||||
resolve statically_true() limitations.
|
||||
|
||||
Note that, somehow, GCC is not always able to fold this:
|
||||
|
||||
__is_constexpr(x) && (x)
|
||||
|
||||
It is OK in BUILD_BUG_ON_ZERO() but not in array declarations nor in
|
||||
static_assert():
|
||||
|
||||
void bar(int a)
|
||||
{
|
||||
/* success */
|
||||
BUILD_BUG_ON_ZERO(__is_constexpr(a) && (a));
|
||||
|
||||
/* fail on GCC */
|
||||
static char arr[__is_constexpr(a) && (a) ? 1 : 2];
|
||||
|
||||
/* fail on GCC */
|
||||
static_assert(__is_constexpr(a) && (a));
|
||||
}
|
||||
|
||||
Encapsulating the expression in a __builtin_choose_expr() switch
|
||||
resolves all these failed tests.
|
||||
|
||||
Define a new const_true() macro which, by making use of the
|
||||
__builtin_choose_expr() and __is_constexpr(x) combo, always produces a
|
||||
constant expression.
|
||||
|
||||
It should be noted that statically_true() is the only one able to fold
|
||||
tautological expressions in which at least one on the operands is not a
|
||||
constant expression. For example:
|
||||
|
||||
statically_true(true || var)
|
||||
statically_true(var == var)
|
||||
statically_true(var * 0 + 1)
|
||||
statically_true(!(var * 8 % 4))
|
||||
|
||||
always evaluates to true, whereas all of these would be false under
|
||||
const_true() if var is not a constant expression [3].
|
||||
|
||||
For this reason, usage of const_true() should be the exception.
|
||||
Reflect in the documentation that const_true() is less powerful and
|
||||
that statically_true() is the overall preferred solution.
|
||||
|
||||
[1] __builtin_constant_p cannot resolve to const when optimizing
|
||||
Link: https://gcc.gnu.org/bugzilla/show_bug.cgi?id=19449
|
||||
|
||||
[2] commit 3c8ba0d61d04 ("kernel.h: Retain constant expression output for max()/min()")
|
||||
Link: https://git.kernel.org/torvalds/c/3c8ba0d61d04
|
||||
|
||||
[3] https://godbolt.org/z/c61PMxqbK
|
||||
|
||||
CC: Linus Torvalds <torvalds@linux-foundation.org>
|
||||
CC: Rasmus Villemoes <linux@rasmusvillemoes.dk>
|
||||
CC: Luc Van Oostenryck <luc.vanoostenryck@gmail.com>
|
||||
Reviewed-by: Yury Norov <yury.norov@gmail.com>,
|
||||
Signed-off-by: Vincent Mailhol <mailhol.vincent@wanadoo.fr>
|
||||
Signed-off-by: Yury Norov <yury.norov@gmail.com>
|
||||
---
|
||||
include/linux/compiler.h | 22 ++++++++++++++++++++++
|
||||
1 file changed, 22 insertions(+)
|
||||
|
||||
--- a/include/linux/compiler.h
|
||||
+++ b/include/linux/compiler.h
|
||||
@@ -293,6 +293,28 @@ static inline void *offset_to_ptr(const
|
||||
#define statically_true(x) (__builtin_constant_p(x) && (x))
|
||||
|
||||
/*
|
||||
+ * Similar to statically_true() but produces a constant expression
|
||||
+ *
|
||||
+ * To be used in conjunction with macros, such as BUILD_BUG_ON_ZERO(),
|
||||
+ * which require their input to be a constant expression and for which
|
||||
+ * statically_true() would otherwise fail.
|
||||
+ *
|
||||
+ * This is a trade-off: const_true() requires all its operands to be
|
||||
+ * compile time constants. Else, it would always returns false even on
|
||||
+ * the most trivial cases like:
|
||||
+ *
|
||||
+ * true || non_const_var
|
||||
+ *
|
||||
+ * On the opposite, statically_true() is able to fold more complex
|
||||
+ * tautologies and will return true on expressions such as:
|
||||
+ *
|
||||
+ * !(non_const_var * 8 % 4)
|
||||
+ *
|
||||
+ * For the general case, statically_true() is better.
|
||||
+ */
|
||||
+#define const_true(x) __builtin_choose_expr(__is_constexpr(x), x, false)
|
||||
+
|
||||
+/*
|
||||
* This is needed in functions which generate the stack canary, see
|
||||
* arch/x86/kernel/smpboot.c::start_secondary() for an example.
|
||||
*/
|
||||
+199
@@ -0,0 +1,199 @@
|
||||
From 02ac5f9d6caec96071103f7c62b5117526e47b64 Mon Sep 17 00:00:00 2001
|
||||
From: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>
|
||||
Date: Thu, 24 Oct 2024 02:20:02 +0000
|
||||
Subject: [PATCH] of: property: add of_graph_get_next_port()
|
||||
|
||||
We have endpoint base functions
|
||||
- of_graph_get_next_endpoint()
|
||||
- of_graph_get_endpoint_count()
|
||||
- for_each_endpoint_of_node()
|
||||
|
||||
Here, for_each_endpoint_of_node() loop finds each endpoints
|
||||
|
||||
ports {
|
||||
port@0 {
|
||||
(1) endpoint {...};
|
||||
};
|
||||
port@1 {
|
||||
(2) endpoint {...};
|
||||
};
|
||||
...
|
||||
};
|
||||
|
||||
In above case, it finds endpoint as (1) -> (2) -> ...
|
||||
|
||||
Basically, user/driver knows which port is used for what, but not in
|
||||
all cases. For example on flexible/generic driver case, how many ports
|
||||
are used is not fixed.
|
||||
|
||||
For example Sound Generic Card driver which is very flexible/generic and
|
||||
used from many venders can't know how many ports are used, and used for
|
||||
what, because it depends on each vender SoC and/or its used board.
|
||||
|
||||
And more, the port can have multi endpoints. For example Generic Sound
|
||||
Card case, it supports many type of connection between CPU / Codec, and
|
||||
some of them uses multi endpoint in one port. see below.
|
||||
|
||||
ports {
|
||||
(A) port@0 {
|
||||
(1) endpoint@0 {...};
|
||||
(2) endpoint@1 {...};
|
||||
};
|
||||
(B) port@1 {
|
||||
(3) endpoint {...};
|
||||
};
|
||||
...
|
||||
};
|
||||
|
||||
Generic Sound Card want to handle each connection via "port" base instead
|
||||
of "endpoint" base. But, it is very difficult to handle each "port" via
|
||||
existing for_each_endpoint_of_node(). Because getting each "port" via
|
||||
of_get_parent() from each "endpoint" doesn't work. For example in above
|
||||
case, both (1) (2) endpoint has same "port" (= A).
|
||||
|
||||
Add "port" base functions.
|
||||
|
||||
Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>
|
||||
Link: https://lore.kernel.org/r/87ldyeb5t9.wl-kuninori.morimoto.gx@renesas.com
|
||||
Signed-off-by: Rob Herring (Arm) <robh@kernel.org>
|
||||
---
|
||||
drivers/of/property.c | 54 ++++++++++++++++++++++++++++++++++++++++
|
||||
include/linux/of_graph.h | 28 +++++++++++++++++++++
|
||||
2 files changed, 82 insertions(+)
|
||||
|
||||
--- a/drivers/of/property.c
|
||||
+++ b/drivers/of/property.c
|
||||
@@ -631,6 +631,43 @@ struct device_node *of_graph_get_port_by
|
||||
EXPORT_SYMBOL(of_graph_get_port_by_id);
|
||||
|
||||
/**
|
||||
+ * of_graph_get_next_port() - get next port node.
|
||||
+ * @parent: pointer to the parent device node, or parent ports node
|
||||
+ * @prev: previous port node, or NULL to get first
|
||||
+ *
|
||||
+ * Parent device node can be used as @parent whether device node has ports node
|
||||
+ * or not. It will work same as ports@0 node.
|
||||
+ *
|
||||
+ * Return: A 'port' node pointer with refcount incremented. Refcount
|
||||
+ * of the passed @prev node is decremented.
|
||||
+ */
|
||||
+struct device_node *of_graph_get_next_port(const struct device_node *parent,
|
||||
+ struct device_node *prev)
|
||||
+{
|
||||
+ if (!parent)
|
||||
+ return NULL;
|
||||
+
|
||||
+ if (!prev) {
|
||||
+ struct device_node *node __free(device_node) =
|
||||
+ of_get_child_by_name(parent, "ports");
|
||||
+
|
||||
+ if (node)
|
||||
+ parent = node;
|
||||
+
|
||||
+ return of_get_child_by_name(parent, "port");
|
||||
+ }
|
||||
+
|
||||
+ do {
|
||||
+ prev = of_get_next_child(parent, prev);
|
||||
+ if (!prev)
|
||||
+ break;
|
||||
+ } while (!of_node_name_eq(prev, "port"));
|
||||
+
|
||||
+ return prev;
|
||||
+}
|
||||
+EXPORT_SYMBOL(of_graph_get_next_port);
|
||||
+
|
||||
+/**
|
||||
* of_graph_get_next_endpoint() - get next endpoint node
|
||||
* @parent: pointer to the parent device node
|
||||
* @prev: previous endpoint node, or NULL to get first
|
||||
@@ -824,6 +861,23 @@ unsigned int of_graph_get_endpoint_count
|
||||
EXPORT_SYMBOL(of_graph_get_endpoint_count);
|
||||
|
||||
/**
|
||||
+ * of_graph_get_port_count() - get the number of port in a device or ports node
|
||||
+ * @np: pointer to the device or ports node
|
||||
+ *
|
||||
+ * Return: count of port of this device or ports node
|
||||
+ */
|
||||
+unsigned int of_graph_get_port_count(struct device_node *np)
|
||||
+{
|
||||
+ unsigned int num = 0;
|
||||
+
|
||||
+ for_each_of_graph_port(np, port)
|
||||
+ num++;
|
||||
+
|
||||
+ return num;
|
||||
+}
|
||||
+EXPORT_SYMBOL(of_graph_get_port_count);
|
||||
+
|
||||
+/**
|
||||
* of_graph_get_remote_node() - get remote parent device_node for given port/endpoint
|
||||
* @node: pointer to parent device_node containing graph port/endpoint
|
||||
* @port: identifier (value of reg property) of the parent port node
|
||||
--- a/include/linux/of_graph.h
|
||||
+++ b/include/linux/of_graph.h
|
||||
@@ -11,6 +11,7 @@
|
||||
#ifndef __LINUX_OF_GRAPH_H
|
||||
#define __LINUX_OF_GRAPH_H
|
||||
|
||||
+#include <linux/cleanup.h>
|
||||
#include <linux/types.h>
|
||||
#include <linux/errno.h>
|
||||
|
||||
@@ -37,14 +38,29 @@ struct of_endpoint {
|
||||
for (child = of_graph_get_next_endpoint(parent, NULL); child != NULL; \
|
||||
child = of_graph_get_next_endpoint(parent, child))
|
||||
|
||||
+/**
|
||||
+ * for_each_of_graph_port - iterate over every port in a device or ports node
|
||||
+ * @parent: parent device or ports node containing port
|
||||
+ * @child: loop variable pointing to the current port node
|
||||
+ *
|
||||
+ * When breaking out of the loop, and continue to use the @child, you need to
|
||||
+ * use return_ptr(@child) or no_free_ptr(@child) not to call __free() for it.
|
||||
+ */
|
||||
+#define for_each_of_graph_port(parent, child) \
|
||||
+ for (struct device_node *child __free(device_node) = of_graph_get_next_port(parent, NULL);\
|
||||
+ child != NULL; child = of_graph_get_next_port(parent, child))
|
||||
+
|
||||
#ifdef CONFIG_OF
|
||||
bool of_graph_is_present(const struct device_node *node);
|
||||
int of_graph_parse_endpoint(const struct device_node *node,
|
||||
struct of_endpoint *endpoint);
|
||||
unsigned int of_graph_get_endpoint_count(const struct device_node *np);
|
||||
+unsigned int of_graph_get_port_count(struct device_node *np);
|
||||
struct device_node *of_graph_get_port_by_id(struct device_node *node, u32 id);
|
||||
struct device_node *of_graph_get_next_endpoint(const struct device_node *parent,
|
||||
struct device_node *previous);
|
||||
+struct device_node *of_graph_get_next_port(const struct device_node *parent,
|
||||
+ struct device_node *port);
|
||||
struct device_node *of_graph_get_endpoint_by_regs(
|
||||
const struct device_node *parent, int port_reg, int reg);
|
||||
struct device_node *of_graph_get_remote_endpoint(
|
||||
@@ -73,6 +89,11 @@ static inline unsigned int of_graph_get_
|
||||
return 0;
|
||||
}
|
||||
|
||||
+static inline unsigned int of_graph_get_port_count(struct device_node *np)
|
||||
+{
|
||||
+ return 0;
|
||||
+}
|
||||
+
|
||||
static inline struct device_node *of_graph_get_port_by_id(
|
||||
struct device_node *node, u32 id)
|
||||
{
|
||||
@@ -83,6 +104,13 @@ static inline struct device_node *of_gra
|
||||
const struct device_node *parent,
|
||||
struct device_node *previous)
|
||||
{
|
||||
+ return NULL;
|
||||
+}
|
||||
+
|
||||
+static inline struct device_node *of_graph_get_next_port(
|
||||
+ const struct device_node *parent,
|
||||
+ struct device_node *previous)
|
||||
+{
|
||||
return NULL;
|
||||
}
|
||||
|
||||
-70
@@ -1,70 +0,0 @@
|
||||
From a256ae22570ee4c3427fdc703a58a89afee6a332 Mon Sep 17 00:00:00 2001
|
||||
From: Luo Jie <quic_luoj@quicinc.com>
|
||||
Date: Thu, 17 Apr 2025 18:47:08 +0800
|
||||
Subject: [PATCH] bitfield: Add FIELD_MODIFY() helper
|
||||
|
||||
Add a helper for replacing the contents of bitfield in memory
|
||||
with the specified value.
|
||||
|
||||
Even though a helper xxx_replace_bits() is available, it is not
|
||||
well documented, and only reports errors at the run time, which
|
||||
will not be helpful to catch possible overflow errors due to
|
||||
incorrect parameter types used.
|
||||
|
||||
FIELD_MODIFY(REG_FIELD_C, ®, c) is the wrapper to the code below.
|
||||
|
||||
reg &= ~REG_FIELD_C;
|
||||
reg |= FIELD_PREP(REG_FIELD_C, c);
|
||||
|
||||
Yury: trim commit message, align backslashes.
|
||||
|
||||
Signed-off-by: Luo Jie <quic_luoj@quicinc.com>
|
||||
Signed-off-by: Yury Norov <yury.norov@gmail.com>
|
||||
---
|
||||
include/linux/bitfield.h | 21 +++++++++++++++++++--
|
||||
1 file changed, 19 insertions(+), 2 deletions(-)
|
||||
|
||||
--- a/include/linux/bitfield.h
|
||||
+++ b/include/linux/bitfield.h
|
||||
@@ -8,6 +8,7 @@
|
||||
#define _LINUX_BITFIELD_H
|
||||
|
||||
#include <linux/build_bug.h>
|
||||
+#include <linux/typecheck.h>
|
||||
#include <asm/byteorder.h>
|
||||
|
||||
/*
|
||||
@@ -38,8 +39,7 @@
|
||||
* FIELD_PREP(REG_FIELD_D, 0x40);
|
||||
*
|
||||
* Modify:
|
||||
- * reg &= ~REG_FIELD_C;
|
||||
- * reg |= FIELD_PREP(REG_FIELD_C, c);
|
||||
+ * FIELD_MODIFY(REG_FIELD_C, ®, c);
|
||||
*/
|
||||
|
||||
#define __bf_shf(x) (__builtin_ffsll(x) - 1)
|
||||
@@ -156,6 +156,23 @@
|
||||
(typeof(_mask))(((_reg) & (_mask)) >> __bf_shf(_mask)); \
|
||||
})
|
||||
|
||||
+/**
|
||||
+ * FIELD_MODIFY() - modify a bitfield element
|
||||
+ * @_mask: shifted mask defining the field's length and position
|
||||
+ * @_reg_p: pointer to the memory that should be updated
|
||||
+ * @_val: value to store in the bitfield
|
||||
+ *
|
||||
+ * FIELD_MODIFY() modifies the set of bits in @_reg_p specified by @_mask,
|
||||
+ * by replacing them with the bitfield value passed in as @_val.
|
||||
+ */
|
||||
+#define FIELD_MODIFY(_mask, _reg_p, _val) \
|
||||
+ ({ \
|
||||
+ typecheck_pointer(_reg_p); \
|
||||
+ __BF_FIELD_CHECK(_mask, *(_reg_p), _val, "FIELD_MODIFY: "); \
|
||||
+ *(_reg_p) &= ~(_mask); \
|
||||
+ *(_reg_p) |= (((typeof(_mask))(_val) << __bf_shf(_mask)) & (_mask)); \
|
||||
+ })
|
||||
+
|
||||
extern void __compiletime_error("value doesn't fit into mask")
|
||||
__field_overflow(void);
|
||||
extern void __compiletime_error("bad bitfield mask")
|
||||
+61
@@ -0,0 +1,61 @@
|
||||
From 64ee3cf096ac590e7da2ceac1c390546bff5e240 Mon Sep 17 00:00:00 2001
|
||||
From: "Rob Herring (Arm)" <robh@kernel.org>
|
||||
Date: Fri, 8 Nov 2024 13:35:48 -0600
|
||||
Subject: [PATCH] of/address: Rework bus matching to avoid warnings
|
||||
|
||||
With warnings added for deprecated #address-cells/#size-cells handling,
|
||||
the DT address handling code causes warnings when used on nodes with no
|
||||
address. This happens frequently with calls to of_platform_populate() as
|
||||
it is perfectly acceptable to have devices without a 'reg' property. The
|
||||
desired behavior is to just silently return an error when retrieving an
|
||||
address.
|
||||
|
||||
The warnings can be avoided by checking for "#address-cells" presence
|
||||
first and checking for an address property before fetching
|
||||
"#address-cells" and "#size-cells".
|
||||
|
||||
Reported-by: Marek Szyprowski <m.szyprowski@samsung.com>
|
||||
Reported-by: Steven Price <steven.price@arm.com>
|
||||
Tested-by: Marek Szyprowski <m.szyprowski@samsung.com>
|
||||
Link: https://lore.kernel.org/r/20241108193547.2647986-2-robh@kernel.org
|
||||
Signed-off-by: Rob Herring (Arm) <robh@kernel.org>
|
||||
---
|
||||
drivers/of/address.c | 14 +++++++++-----
|
||||
1 file changed, 9 insertions(+), 5 deletions(-)
|
||||
|
||||
--- a/drivers/of/address.c
|
||||
+++ b/drivers/of/address.c
|
||||
@@ -331,7 +331,11 @@ static unsigned int of_bus_isa_get_flags
|
||||
|
||||
static int of_bus_default_flags_match(struct device_node *np)
|
||||
{
|
||||
- return of_bus_n_addr_cells(np) == 3;
|
||||
+ /*
|
||||
+ * Check for presence first since of_bus_n_addr_cells() will warn when
|
||||
+ * walking parent nodes.
|
||||
+ */
|
||||
+ return of_property_present(np, "#address-cells") && (of_bus_n_addr_cells(np) == 3);
|
||||
}
|
||||
|
||||
/*
|
||||
@@ -700,16 +704,16 @@ const __be32 *__of_get_address(struct de
|
||||
if (strcmp(bus->name, "pci") && (bar_no >= 0))
|
||||
return NULL;
|
||||
|
||||
- bus->count_cells(dev, &na, &ns);
|
||||
- if (!OF_CHECK_ADDR_COUNT(na))
|
||||
- return NULL;
|
||||
-
|
||||
/* Get "reg" or "assigned-addresses" property */
|
||||
prop = of_get_property(dev, bus->addresses, &psize);
|
||||
if (prop == NULL)
|
||||
return NULL;
|
||||
psize /= 4;
|
||||
|
||||
+ bus->count_cells(dev, &na, &ns);
|
||||
+ if (!OF_CHECK_ADDR_COUNT(na))
|
||||
+ return NULL;
|
||||
+
|
||||
onesize = na + ns;
|
||||
for (i = 0; psize >= onesize; psize -= onesize, prop += onesize, i++) {
|
||||
u32 val = be32_to_cpu(prop[0]);
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user