mirror of
https://github.com/torvalds/linux.git
synced 2026-09-23 13:14:02 +02:00
soc/tegra: Changes for v7.3-rc1
Various small fixes for multi-socket devices, redundant error prints, a Kconfig dependency as well as a patch to remove FUSE data as an entropy source. -----BEGIN PGP SIGNATURE----- iQIzBAABCgAdFiEEiOrDCAFJzPfAjcif3SOs138+s6EFAmpvcScACgkQ3SOs138+ s6HPdA/9GJuNIlC5yerd/tZUdgTRUCRLe8XlbfAX9vw3wYcxCEoqu082sr1O9HWV 5y70TKrsxrBE5ugibvL3LOSTQ8jCSnvDuyfBFG0ZwJ7u4EtvW70VG4g6ZUkP+DVy aPdgJZ1Zft4/d3RsmdfZj+MYDyCQvHP9UYCMEBEJLOj8jAK3PuSQy7KrRDzcovBQ xSlijqYtenrFZzzt0NdshH+rrGtLHrzJXB5itMi//zRLoDCz7AGDSwKJ2NWm+fXU o6bn1OZRC9TtNocOfKTKzrsUPGjfezhtG8+SKFscOZO6Wqjvth7TwFJ03HNynq2I 5A28x4tNYmuU0+kv5YrvLgZ6PHLbL+gmid4G6GwZtggOJEewvOBih6sNHesVUyAT QlCol2PonGi9SHMn5N+dU22UZipZe4JF/uoxWRKFzGXPIjkPnvRJVQpKYqmO1Tyw c3f+TGF4JMGP/z/w3vxT0WgYqQ8ZHwhQdDOwfVX3q/w7Nurn6esBMtO5M0f+As4+ IQxh+/KZ4p8Y250q8M6IWVBy9X+8gCoGcQzw3NIPAhvj3nor+8LG8TecmxzdZcbR shBuN6OUXTBGvXHMiaEX1QGED1Am/u1Sb1W43HWayh9XOXQZmLE8kOAkMwiSlvzv u/4euYCvnOYtw/RpSz+a/aUSrZfVs3/5taBc2AssZ3E8WBmEr70= =2BEF -----END PGP SIGNATURE----- gpgsig -----BEGIN PGP SIGNATURE----- iQIzBAABCgAdFiEEo6/YBQwIrVS28WGKmmx57+YAGNkFAmpyQmoACgkQmmx57+YA GNnu/BAAnxdcYeZcENwvkDr7aFtxnmEhdIWly5N2zSMFRRFXVgdVqUiSeKcpiNk8 VV7/ye94Q4sp3oj/DluXJkK3/Ma57rMG/WeXHShtFRalQUc12v7OfD0BgGAieNYW Vqg2ZgR25FcMhXDE2+g4LrkinWMQC/o/csyVaLQXxWDQL4EqSzAcqQ5yRn3JL3x5 Qs4Zd5aZbcRcpDFzXt1tefAKO2LSXrQM/pOuUo4Yf5ZcnfehAILmQYAR066TV2u3 plOLabOeXNSsYjHhUobLY6OIy5817OWRXgh+khRVAXjf90HX4Y+I68RjlgC/QCWQ A9XwdxLM1CDDs95m166nTechcI05DysRXdvqTEfRpnNxk08gc6zXYrcvSzWd/kcn HxdPmsWgZ5Hk4/ikmJPBx8U7UvDwnoBWFSaP1Hv4ZmIk60tLH4JdXRUGivewZnIB J9g0AbY2IzHI4wJdLrNvgd8xcufr/3SvgX34hT2n1UOnmlbC8uYrzNx9TN8HiZIQ CFQZzYc8FFWlzE24y0rvGOgQa+Jbj6Vq5+9q3UEslcOZfkEGZYjN+TkL4HLruuL4 8tRRA94fWCa+aE7QZ3l/8OnFsYjHcR46ufjyS0BLxfvx/usaIXyJuaW/tMP2dcbX 2FKi4ZsANBXt+oIz3C5NZu+bexDo3J13PzjYJNyGsH+9Xq32v7Q= =+3bz -----END PGP SIGNATURE----- Merge tag 'tegra-for-7.3-soc' of git://git.kernel.org/pub/scm/linux/kernel/git/tegra/linux into soc/drivers soc/tegra: Changes for v7.3-rc1 Various small fixes for multi-socket devices, redundant error prints, a Kconfig dependency as well as a patch to remove FUSE data as an entropy source. * tag 'tegra-for-7.3-soc' of git://git.kernel.org/pub/scm/linux/kernel/git/tegra/linux: soc/tegra: Add PM dependency to SOC_TEGRA_PMC Kconfig soc/tegra: fuse: Use device-specific instance in suspend/resume soc/tegra: fuse: Do not use fuse data as entropy source soc/tegra: cbb: Remove redundant dev_err() soc/tegra: pmc: Don't register sys-off handler for multi-socket devices Signed-off-by: Arnd Bergmann <arnd@arndb.de>
This commit is contained in:
commit
3a83c24d74
|
|
@ -171,6 +171,7 @@ config SOC_TEGRA_FLOWCTRL
|
|||
|
||||
config SOC_TEGRA_PMC
|
||||
bool
|
||||
depends on PM
|
||||
select GENERIC_PINCONF
|
||||
select IRQ_DOMAIN_HIERARCHY
|
||||
select PM_OPP
|
||||
|
|
|
|||
|
|
@ -2072,20 +2072,15 @@ static int tegra194_cbb_interrupt_enable(struct tegra_cbb *cbb)
|
|||
if (priv->sec_irq) {
|
||||
err = devm_request_irq(dev, priv->sec_irq, tegra194_cbb_err_isr, 0, dev_name(dev),
|
||||
priv);
|
||||
if (err) {
|
||||
dev_err(dev, "failed to register interrupt %u: %d\n", priv->sec_irq, err);
|
||||
if (err)
|
||||
return err;
|
||||
}
|
||||
}
|
||||
|
||||
if (priv->nonsec_irq) {
|
||||
err = devm_request_irq(dev, priv->nonsec_irq, tegra194_cbb_err_isr, 0,
|
||||
dev_name(dev), priv);
|
||||
if (err) {
|
||||
dev_err(dev, "failed to register interrupt %u: %d\n", priv->nonsec_irq,
|
||||
err);
|
||||
if (err)
|
||||
return err;
|
||||
}
|
||||
}
|
||||
|
||||
return 0;
|
||||
|
|
|
|||
|
|
@ -258,6 +258,7 @@ static int tegra_fuse_probe(struct platform_device *pdev)
|
|||
|
||||
static int __maybe_unused tegra_fuse_runtime_resume(struct device *dev)
|
||||
{
|
||||
struct tegra_fuse *fuse = dev_get_drvdata(dev);
|
||||
int err;
|
||||
|
||||
err = clk_prepare_enable(fuse->clk);
|
||||
|
|
@ -271,6 +272,8 @@ static int __maybe_unused tegra_fuse_runtime_resume(struct device *dev)
|
|||
|
||||
static int __maybe_unused tegra_fuse_runtime_suspend(struct device *dev)
|
||||
{
|
||||
struct tegra_fuse *fuse = dev_get_drvdata(dev);
|
||||
|
||||
clk_disable_unprepare(fuse->clk);
|
||||
|
||||
return 0;
|
||||
|
|
@ -278,6 +281,7 @@ static int __maybe_unused tegra_fuse_runtime_suspend(struct device *dev)
|
|||
|
||||
static int __maybe_unused tegra_fuse_suspend(struct device *dev)
|
||||
{
|
||||
struct tegra_fuse *fuse = dev_get_drvdata(dev);
|
||||
int ret;
|
||||
|
||||
/*
|
||||
|
|
@ -294,6 +298,7 @@ static int __maybe_unused tegra_fuse_suspend(struct device *dev)
|
|||
|
||||
static int __maybe_unused tegra_fuse_resume(struct device *dev)
|
||||
{
|
||||
struct tegra_fuse *fuse = dev_get_drvdata(dev);
|
||||
int ret = 0;
|
||||
|
||||
if (fuse->soc->clk_suspend_on)
|
||||
|
|
|
|||
|
|
@ -64,28 +64,6 @@ static u32 tegra30_fuse_read(struct tegra_fuse *fuse, unsigned int offset)
|
|||
return value;
|
||||
}
|
||||
|
||||
static void __init tegra30_fuse_add_randomness(void)
|
||||
{
|
||||
u32 randomness[12];
|
||||
|
||||
randomness[0] = tegra_sku_info.sku_id;
|
||||
randomness[1] = tegra_read_straps();
|
||||
randomness[2] = tegra_read_chipid();
|
||||
randomness[3] = tegra_sku_info.cpu_process_id << 16;
|
||||
randomness[3] |= tegra_sku_info.soc_process_id;
|
||||
randomness[4] = tegra_sku_info.cpu_speedo_id << 16;
|
||||
randomness[4] |= tegra_sku_info.soc_speedo_id;
|
||||
randomness[5] = tegra_fuse_read_early(FUSE_VENDOR_CODE);
|
||||
randomness[6] = tegra_fuse_read_early(FUSE_FAB_CODE);
|
||||
randomness[7] = tegra_fuse_read_early(FUSE_LOT_CODE_0);
|
||||
randomness[8] = tegra_fuse_read_early(FUSE_LOT_CODE_1);
|
||||
randomness[9] = tegra_fuse_read_early(FUSE_WAFER_ID);
|
||||
randomness[10] = tegra_fuse_read_early(FUSE_X_COORDINATE);
|
||||
randomness[11] = tegra_fuse_read_early(FUSE_Y_COORDINATE);
|
||||
|
||||
add_device_randomness(randomness, sizeof(randomness));
|
||||
}
|
||||
|
||||
static void __init tegra30_fuse_init(struct tegra_fuse *fuse)
|
||||
{
|
||||
fuse->read_early = tegra30_fuse_read_early;
|
||||
|
|
@ -95,8 +73,6 @@ static void __init tegra30_fuse_init(struct tegra_fuse *fuse)
|
|||
|
||||
if (fuse->soc->speedo_init)
|
||||
fuse->soc->speedo_init(&tegra_sku_info);
|
||||
|
||||
tegra30_fuse_add_randomness();
|
||||
}
|
||||
#endif
|
||||
|
||||
|
|
|
|||
|
|
@ -3074,15 +3074,18 @@ static int tegra_pmc_probe(struct platform_device *pdev)
|
|||
}
|
||||
}
|
||||
|
||||
err = devm_register_sys_off_handler(&pdev->dev,
|
||||
SYS_OFF_MODE_RESTART,
|
||||
SYS_OFF_PRIO_LOW,
|
||||
tegra_pmc_restart_handler,
|
||||
pmc);
|
||||
if (err) {
|
||||
dev_err(&pdev->dev, "failed to register sys-off handler: %d\n",
|
||||
err);
|
||||
return err;
|
||||
if (dev_to_node(&pdev->dev) == NUMA_NO_NODE) {
|
||||
err = devm_register_sys_off_handler(&pdev->dev,
|
||||
SYS_OFF_MODE_RESTART,
|
||||
SYS_OFF_PRIO_LOW,
|
||||
tegra_pmc_restart_handler,
|
||||
pmc);
|
||||
if (err) {
|
||||
dev_err(&pdev->dev,
|
||||
"failed to register sys-off handler: %d\n",
|
||||
err);
|
||||
return err;
|
||||
}
|
||||
}
|
||||
|
||||
/*
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user