mirror of
https://github.com/torvalds/linux.git
synced 2026-07-28 10:09:10 +02:00
Memory controller drivers for v7.2, part two
A few improvements for Tegra Memory Controller drivers, including one fix for UBSAN report for an older commit. -----BEGIN PGP SIGNATURE----- iQJEBAABCgAuFiEE3dJiKD0RGyM7briowTdm5oaLg9cFAmovylUQHGtyemtAa2Vy bmVsLm9yZwAKCRDBN2bmhouD14OOD/0ZjMQ7h1MLBteapcmkzTKjfNzbBhwg+hA4 14fpQXiiMYiprDhFnJc4hTx45ubb7idEC/kry7Uoza3BKAaNubUSF5YN4DT/C080 OOedSizlGBicH5xjx4IbbHTuIf6cRf4tCamug6O/kb4DvGwsFsM/iMd6Kw5uy2F+ FZiwNHwWrhBGZmTaidS6tJHwj0ZAEYLdidLC39CrmqrDQHiaIE9/z6J3d1d9grgb WJn3vqL8Ey2JiCMWl8pTh8auQr9tRpIXRY4VYOAC18h25bNl34TS/tobsdvWlrqB jwy69EQSfpI5KyAV7dqZPe3OfX1MAMCG+Qc9vvNGanE4aEqZRR3Vz+xWZicnOZsX jYKoWZIZ1sdi6GDOA2B9JQ/sERxxdgxtAq1d2NXwHpYhScWKrR2qsZJIojjHSqok E44Mpaqr7HIU9l+mA3NUmrA2yPKctoL+Qf0bXJY+HWZVKPv/oVBE8XGij8Q8m+m/ MKsJ7lcOQVDv2Uy3onSNiiCFTzIDS/YyQC+l7B4fV1JrlEy8eKaWYGd3lQK33+GT z59P7B01NcEsEzfEYrxPMONrqNEuOboQ7iis07TnxoI3a7k0khOQ4Kc9QW+vXPNB 7jG5cP6pWkew3KrlZbZZ9zpV2TGkcrcreo+jhGRDJRklbHVhoVr2AjPGgrf31VY9 7wWO8/9Umw== =360l -----END PGP SIGNATURE----- gpgsig -----BEGIN PGP SIGNATURE----- iQIzBAABCgAdFiEEo6/YBQwIrVS28WGKmmx57+YAGNkFAmov5f0ACgkQmmx57+YA GNnqOA//e8vVXkYXFuUTmkZ99Rhip+SFB1mChgAbZrLHkBH3SJNBX8qzVl574MGW Sx1YE3QzaFCYDd0WtN0jZIFKB3UmFcd4PFP5gm30pJ64tNzBmjLJHhT0jk9HLfYv +Shxsq0/k2y/Ezf+tf7RnWlscdB0BqYQOGu4sMHbyablUfoI60kt+PSZgfrMTs4m X3SaXd1W2Tdy4cfXBZBRiZWxhnT6W9OTDZEzjtpuKMFY30p1HWP/ahjlHq1slcgG +djTZT6660maAPawDM4LBjul2C8Rm7dGDvUy54VxdaH0r9wobtigwg5y+IxF+Kka VsWJK6uCoiD1FI2CjzTIWMLPLYwup1QbjLp/8r+N17HxmW+oiOl4cGPHyXVNdGdF 1DQpFbiVsD0h4sdj1NtxV++py7xUXw6TwoU64irSpCdONL9zw7rqf7Kv9Za3huKW K9SKTYFn1xXKw2dDr/bQp2b7jFwzeARghwnjwsYrphkumxU2Nte7wrk612XZE1N5 KcytcV2ejTl98PUMgJmsu8cQygtHBPHonSkYtxP72Rp26Z7JEe6wa9fy6DFW2mP9 xrSCHWKmmbXak4/h8Vu3nuWpX1wupu1DqFmdzBmZM0TnTWSN57UZP67Aj7SNnTtw 4yP4OEI0/2y8rBIz2Rm00m98T6IuQKOKoSwYN3b1eotdunUHVXQ= =pyTK -----END PGP SIGNATURE----- Merge tag 'memory-controller-drv-7.2-2' of https://git.kernel.org/pub/scm/linux/kernel/git/krzk/linux-mem-ctrl into soc/drivers Memory controller drivers for v7.2, part two A few improvements for Tegra Memory Controller drivers, including one fix for UBSAN report for an older commit. * tag 'memory-controller-drv-7.2-2' of https://git.kernel.org/pub/scm/linux/kernel/git/krzk/linux-mem-ctrl: memory: tegra234: drop dead NULL check in tegra234_mc_icc_aggregate() memory: tegra264: drop redundant tegra264_mc_icc_aggregate() memory: tegra186-emc: stop borrowing MC aggregate hook for EMC Signed-off-by: Arnd Bergmann <arnd@arndb.de>
This commit is contained in:
commit
c7437fab2f
|
|
@ -258,15 +258,13 @@ static int tegra186_emc_icc_get_init_bw(struct icc_node *node, u32 *avg, u32 *pe
|
|||
|
||||
static int tegra186_emc_interconnect_init(struct tegra186_emc *emc)
|
||||
{
|
||||
struct tegra_mc *mc = dev_get_drvdata(emc->dev->parent);
|
||||
const struct tegra_mc_soc *soc = mc->soc;
|
||||
struct icc_node *node;
|
||||
int err;
|
||||
|
||||
emc->provider.dev = emc->dev;
|
||||
emc->provider.set = tegra186_emc_icc_set_bw;
|
||||
emc->provider.data = &emc->provider;
|
||||
emc->provider.aggregate = soc->icc_ops->aggregate;
|
||||
emc->provider.aggregate = icc_std_aggregate;
|
||||
emc->provider.xlate = tegra186_emc_of_icc_xlate;
|
||||
emc->provider.get_bw = tegra186_emc_icc_get_init_bw;
|
||||
|
||||
|
|
|
|||
|
|
@ -1106,10 +1106,8 @@ static int tegra234_mc_icc_aggregate(struct icc_node *node, u32 tag, u32 avg_bw,
|
|||
|
||||
if (node->id == TEGRA_ICC_MC_CPU_CLUSTER0 ||
|
||||
node->id == TEGRA_ICC_MC_CPU_CLUSTER1 ||
|
||||
node->id == TEGRA_ICC_MC_CPU_CLUSTER2) {
|
||||
if (mc)
|
||||
peak_bw = peak_bw * mc->num_channels;
|
||||
}
|
||||
node->id == TEGRA_ICC_MC_CPU_CLUSTER2)
|
||||
peak_bw = peak_bw * mc->num_channels;
|
||||
|
||||
*agg_avg += avg_bw;
|
||||
*agg_peak = max(*agg_peak, peak_bw);
|
||||
|
|
|
|||
|
|
@ -799,21 +799,6 @@ static int tegra264_mc_icc_set(struct icc_node *src, struct icc_node *dst)
|
|||
return ret;
|
||||
}
|
||||
|
||||
static int tegra264_mc_icc_aggregate(struct icc_node *node, u32 tag, u32 avg_bw,
|
||||
u32 peak_bw, u32 *agg_avg, u32 *agg_peak)
|
||||
{
|
||||
struct icc_provider *p = node->provider;
|
||||
struct tegra_mc *mc = icc_provider_to_tegra_mc(p);
|
||||
|
||||
if (!mc->bwmgr_mrq_supported)
|
||||
return 0;
|
||||
|
||||
*agg_avg += avg_bw;
|
||||
*agg_peak = max(*agg_peak, peak_bw);
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
static int tegra264_mc_icc_get_init_bw(struct icc_node *node, u32 *avg, u32 *peak)
|
||||
{
|
||||
*avg = 0;
|
||||
|
|
@ -1130,7 +1115,7 @@ static const irq_handler_t tegra264_mc_irq_handlers[8] = {
|
|||
|
||||
static const struct tegra_mc_icc_ops tegra264_mc_icc_ops = {
|
||||
.xlate = tegra_mc_icc_xlate,
|
||||
.aggregate = tegra264_mc_icc_aggregate,
|
||||
.aggregate = icc_std_aggregate,
|
||||
.get_bw = tegra264_mc_icc_get_init_bw,
|
||||
.set = tegra264_mc_icc_set,
|
||||
};
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user