- Add simplefb device-tree node which is required to show
early boot-up logs on display when UEFI initializes display
- Default status of the node is disabled by default in DT
and is enabled dynamically by UEFI only when it initializes display
- Following information is contained in the simplefb node.
i) Add display power-domain property. Without this, genpd driver
will powergate the display power-domain during kernel boot.
ii) Add all display clocks handles (even if not enabled by UEFI).
Without this, kernel CCF will disable clocks during kernel boot-up.
iii) Add reference to fb reserved region memory node.
fb reserved region node is updated by UEFI driver when it
initializes display.
iv) Add width, height, stride properties initialized to
"0" and format of display surface initialized to 32bit RGB pixel
format. These are updated by UEFI when it initializes display as
per UEFI display surface properties.
Bug 3601162
Bug 4650169
Change-Id: If938853e1d29c08753e71e94bfd5a9a007a9585a
Signed-off-by: Santosh Reddy Galma <galmar@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/soc/t23x/+/2917196
(cherry picked from 8baa582f3e4b26d1354bb05ee4c88c868ba2e6a7)
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/2942107
(cherry picked from commit 8b898bc900)
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/2978254
Reviewed-by: Jon Hunter <jonathanh@nvidia.com>
Reviewed-by: Brad Griffis <bgriffis@nvidia.com>
GVS: buildbot_gerritrpt <buildbot_gerritrpt@nvidia.com>
DTB spec says:
"A DTSpec-compliant boot program shall supply #address-cells and
#size-cells on all nodes that have children"
This adds the required cells to the interrupt-controller node.
It also fixes up pcie interrupt-map values to
use the correct number of #address-cells. They
appeared to be using 0 before.
JIRA TEGRAUEFI-3252
Signed-off-by: Jeshua Smith <jeshuas@nvidia.com>
ChangeId: Iaa30ab7a1612aa8927a6de239fb201c66049ab0f
Change-Id: Iaa30ab7a1612aa8927a6de239fb201c66049ab0f
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/3231095
Reviewed-by: Bitan Biswas <bbiswas@nvidia.com>
GVS: buildbot_gerritrpt <buildbot_gerritrpt@nvidia.com>
Following crash is seen on T234 while reading kfuse offset using
tegra_fuse_control_read() API:
[ 433.811390] Unable to handle kernel paging request at virtual address ffff800081ba8000
[ 433.811613] Mem abort info:
[ 433.812570] ESR = 0x0000000096000007
[ 433.816340] EC = 0x25: DABT (current EL), IL = 32 bits
[ 433.821763] SET = 0, FnV = 0
[ 433.824912] EA = 0, S1PTW = 0
[ 433.827974] FSC = 0x07: level 3 translation fault
[ 433.832875] Data abort info:
[ 433.835674] ISV = 0, ISS = 0x00000007, ISS2 = 0x00000000
[ 433.841011] CM = 0, WnR = 0, TnD = 0, TagAccess = 0
[ 433.846085] GCS = 0, Overlay = 0, DirtyBit = 0, Xs = 0
[ 433.851601] swapper pgtable: 4k pages, 48-bit VAs, pgdp=00000007fea7f000
[ 434.057570] pc : tegra30_fuse_control_read+0x38/0xf0
[ 434.062555] lr : tegra30_fuse_control_read+0x2c/0xf0
On T234 Kfuse is part of the fuse controller, this increases the fuse
block size to 0x20000. Currently, the fuse size is specified as 0x10000
in the device-tree. If a client driver issues tegra_fuse_read APIs with
offsets > 0x10000, then it can result in page fault.
Increase the fuse page size to 0x20000.
Bug 4864112
Change-Id: Ifa937ac86b349aef3e497af975c3c4126e44fc78
Signed-off-by: Kartik <kkartik@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/3227771
Reviewed-by: Brad Griffis <bgriffis@nvidia.com>
GVS: buildbot_gerritrpt <buildbot_gerritrpt@nvidia.com>
Disable SCE fabric node to avoid overwrite of the actual CBB error and
to print info about the original error. Access to SCE fabric registers
was blocked by firewall after the introduction of FSI. After that any
illegal access by some SW to SCE registers is correctly resulting in
the CBB firewall error. But when CCPLEX tries accessing the SCE-fabric
registers to print error info, then another firewall error comes as
the fabric registers are also firewall protected. This causes second
error info to be printed which is misleading. Disable SCE fabric node
to avoid printing the misleading second error. The first error will
get printed on interrupt from the fabric causing the actual access.
Bug 4369009
Change-Id: I8f47516248bf239d9a5c7780d0f10456b1ebd9de
Signed-off-by: Sumit Gupta <sumitg@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/3179289
(cherry picked from commit 43c90b2f83)
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/3229274
Reviewed-by: Bibek Basu <bbasu@nvidia.com>
GVS: buildbot_gerritrpt <buildbot_gerritrpt@nvidia.com>
Graph sound card driver is enabled by default now and legacy machine
driver is going to be removed. Hence cleanup the legacy bindings and
going forward only maintain the graph sound card bindings. The 'sound'
device for graph card and legacy machine driver were merged earlier,
so we don't require duplicate phandles for the 'sound' node. Hence
remove the 'tegra_sound_graph' phandle.
Bug 4596865
Change-Id: Ie5a0a325a3d8b72d102a789116f7ccafa0bc7726
Signed-off-by: Sameer Pujar <spujar@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/3111444
Tested-by: mobile promotions <svcmobile_promotions@nvidia.com>
Reviewed-by: mobile promotions <svcmobile_promotions@nvidia.com>
This commit helps to use upstream graph sound card driver and has
following changes to support it:
- compatible property update for sound node is removed from the
nv-platform DTSI file. No need to support legacy machine driver
anymore and thus compatible from generic DT is good enough.
- Rename 'nvidia-audio-card,mclk-fs' property to just 'mclk-fs'
to align with upstream binding.
- Upstream device tree sources have the audio codec enabled by
default for AGX Orin platform. This was done so because all
publicly available AGX Orin boards have onboard codec. But,
downstream still runs some sanity tests on older boards which
don't have codec. To support this, disable the codec in the
downstream device tree and conditionally enable them based on
the board revision check.
- Upstream device tree doesn't enable all the I/O instances,
however downstream enables all of them and has sanity coverage.
Thus enable these by updating 'dais' property in downstream
device tree.
- There is codec specific setting required from machine driver
for RT5640 codec. Add the legacy DAI link name in the codec
endpoint node.
Bug 4451662
Bug 4453772
Change-Id: Ib471ed4526c6b45def7e1797ba9ac8b05da0946c
Signed-off-by: Sameer Pujar <spujar@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/3095766
Reviewed-by: Mohan kumar <mkumard@nvidia.com>
Reviewed-by: Sharad Gupta <sharadg@nvidia.com>
GVS: Gerrit_Virtual_Submit <buildbot_gerritrpt@nvidia.com>
Reviewed-by: svcacv <svcacv@nvidia.com>
HDCP is only supposed to be enabled on L4T and only on concord
and slt platforms. A property was added in dts files for both the
platforms for K5.10. Since migration to K6.1, location of dts files
have changed and thus broken the HDCP functionality on branches that
use K6.1. This change fixes the same.
Bug 4505086
Change-Id: I356bae35c442ad5f28f871a25f3d5524cbb4fc58
Signed-off-by: spatki <spatki@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/3079401
Reviewed-by: Bitan Biswas <bbiswas@nvidia.com>
GVS: Gerrit_Virtual_Submit <buildbot_gerritrpt@nvidia.com>
Upstream AHUB drivers have following variations when compared to
OOT versions:
- Upstream AHUB drivers of I/O modules don't expose dummy DAIs.
To use upstream AHUB drivers, legacy machine driver exposes
dummy DAI and use the same here. There were objections from
upstream maintainers to expose dummy DAIs from the I/O module
drivers. Hence these are now exposed from the legacy machine
driver.
- DAI index of ADX input and output ports are different in
upstream ADX driver.
To use upstream ADX driver update the DAI index values.
- Upstream SFC, OPE and MVC drivers use separate ports for
input and output.
To use upstream drivers, use correct DAI index of for these
modules. Remove the TODO comment and cleanup the macro check.
- ARAD, AFC and ADSP audio devices are yet to be upstreamed.
Remove DAI links related to these modules to allow legacy
machine driver to work with already upstreamed AHUB drivers.
There is no plan to productize these modules with legacy
machine driver and hence these can be removed. In future,
these will be supported from graph card driver and the DT
binding for it is going to be different anyways.
Bug 4451662
Bug 4432184
TAS-2251
Change-Id: I934a75c067e46433b41a484bdacaa5e2c66566cb
Signed-off-by: Sameer Pujar <spujar@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/3059813
Reviewed-by: Mohan kumar <mkumard@nvidia.com>
Reviewed-by: Sheetal . <sheetal@nvidia.com>
Reviewed-by: Sharad Gupta <sharadg@nvidia.com>
GVS: Gerrit_Virtual_Submit <buildbot_gerritrpt@nvidia.com>
Clock and reset names are being removed from upstream device-tree for
devices that only have a single clock or reset. The QSPI driver does not
use the 'reset-names' property and so this can be removed for these
devices.
UART devices may use either the 8250 serial driver or the Tegra HS
serial driver. The default is the 8250 driver. When the Tegra HS serial
driver is used, the 'reset-names' property is required because the
driver specifically uses the reset name although there is only one. The
clock-names and reset-names for the 0x3100000 UART can be removed from
the base overlay file because the reset-names is correctly specified
in the files where the compatibility string for the Tegra HS serial
driver is set.
Bug 4037899
Change-Id: I501cd36609824e5703a6b756fc5f5389dd8d2368
Signed-off-by: Jon Hunter <jonathanh@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/3074829
(cherry picked from commit fb920bea54)
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/3075748
Tested-by: mobile promotions <svcmobile_promotions@nvidia.com>
Reviewed-by: mobile promotions <svcmobile_promotions@nvidia.com>
When booting Linux with GRUB, the serial console does not show the
kernel boot messages as expected. By default GRUB does not add the
'console' kernel parameter and relies on device-tree to configure the
default serial port. Device-tree configures the default serial port by
setting the property 'stdout-path=serial0:115200n8' where 'serial0' is
an alises to one of the devices serial ports. The default serial port
for Tegra234 devices is the TCU0 and so 'serial0' should be mapped to
this interface. However, the 'serial0' is being updated to be mapped to
a different UART.
Fix this by removing the additional 'serialX' aliases in the base
overlay file and add any alises that are not already defined to the
appropriate board file. This does change the mapping of some aliases but
this aligns the boards with the aliases as they are defined upstream.
Bug 4264560
Change-Id: Icf6bdb1e7d5c9abf5bdbf5378b4ed8122910b507
Signed-off-by: Jon Hunter <jonathanh@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/3072368
(cherry picked from commit 6114a37466)
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/3075606
Reviewed-by: Brad Griffis <bgriffis@nvidia.com>
GVS: Gerrit_Virtual_Submit <buildbot_gerritrpt@nvidia.com>