diff options
| author | Linus Torvalds <torvalds@linux-foundation.org> | 2018-09-08 18:38:57 -0400 |
|---|---|---|
| committer | Linus Torvalds <torvalds@linux-foundation.org> | 2018-09-08 18:38:57 -0400 |
| commit | 0f3aa48ad4c307fb72b8eb43add26c8f314d396a (patch) | |
| tree | 117dd4d05104638ef41920fd3c841fbb232daaa4 /drivers | |
| parent | d7b686ebf704e3d91925a535a0905ba6be23757c (diff) | |
| parent | a132bb90414bfad4f8ee23cb45fe6946a89b167d (diff) | |
Merge tag 'armsoc-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc
Pull ARM SoC fixes from Olof Johansson:
"A few more fixes who have trickled in:
- MMC bus width fixup for some Allwinner platforms
- Fix for NULL deref in ti-aemif when no platform data is passed in
- Fix div by 0 in SCMI code
- Add a missing module alias in a new RPi driver"
* tag 'armsoc-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc:
memory: ti-aemif: fix a potential NULL-pointer dereference
firmware: arm_scmi: fix divide by zero when sustained_perf_level is zero
hwmon: rpi: add module alias to raspberrypi-hwmon
arm64: allwinner: dts: h6: fix Pine H64 MMC bus width
Diffstat (limited to 'drivers')
| -rw-r--r-- | drivers/firmware/arm_scmi/perf.c | 8 | ||||
| -rw-r--r-- | drivers/hwmon/raspberrypi-hwmon.c | 1 | ||||
| -rw-r--r-- | drivers/memory/ti-aemif.c | 2 |
3 files changed, 9 insertions, 2 deletions
diff --git a/drivers/firmware/arm_scmi/perf.c b/drivers/firmware/arm_scmi/perf.c index 721e6c57beae..64342944d917 100644 --- a/drivers/firmware/arm_scmi/perf.c +++ b/drivers/firmware/arm_scmi/perf.c | |||
| @@ -166,7 +166,13 @@ scmi_perf_domain_attributes_get(const struct scmi_handle *handle, u32 domain, | |||
| 166 | le32_to_cpu(attr->sustained_freq_khz); | 166 | le32_to_cpu(attr->sustained_freq_khz); |
| 167 | dom_info->sustained_perf_level = | 167 | dom_info->sustained_perf_level = |
| 168 | le32_to_cpu(attr->sustained_perf_level); | 168 | le32_to_cpu(attr->sustained_perf_level); |
| 169 | dom_info->mult_factor = (dom_info->sustained_freq_khz * 1000) / | 169 | if (!dom_info->sustained_freq_khz || |
| 170 | !dom_info->sustained_perf_level) | ||
| 171 | /* CPUFreq converts to kHz, hence default 1000 */ | ||
| 172 | dom_info->mult_factor = 1000; | ||
| 173 | else | ||
| 174 | dom_info->mult_factor = | ||
| 175 | (dom_info->sustained_freq_khz * 1000) / | ||
| 170 | dom_info->sustained_perf_level; | 176 | dom_info->sustained_perf_level; |
| 171 | memcpy(dom_info->name, attr->name, SCMI_MAX_STR_SIZE); | 177 | memcpy(dom_info->name, attr->name, SCMI_MAX_STR_SIZE); |
| 172 | } | 178 | } |
diff --git a/drivers/hwmon/raspberrypi-hwmon.c b/drivers/hwmon/raspberrypi-hwmon.c index fb4e4a6bb1f6..be5ba4690895 100644 --- a/drivers/hwmon/raspberrypi-hwmon.c +++ b/drivers/hwmon/raspberrypi-hwmon.c | |||
| @@ -164,3 +164,4 @@ module_platform_driver(rpi_hwmon_driver); | |||
| 164 | MODULE_AUTHOR("Stefan Wahren <stefan.wahren@i2se.com>"); | 164 | MODULE_AUTHOR("Stefan Wahren <stefan.wahren@i2se.com>"); |
| 165 | MODULE_DESCRIPTION("Raspberry Pi voltage sensor driver"); | 165 | MODULE_DESCRIPTION("Raspberry Pi voltage sensor driver"); |
| 166 | MODULE_LICENSE("GPL v2"); | 166 | MODULE_LICENSE("GPL v2"); |
| 167 | MODULE_ALIAS("platform:raspberrypi-hwmon"); | ||
diff --git a/drivers/memory/ti-aemif.c b/drivers/memory/ti-aemif.c index 31112f622b88..475e5b3790ed 100644 --- a/drivers/memory/ti-aemif.c +++ b/drivers/memory/ti-aemif.c | |||
| @@ -411,7 +411,7 @@ static int aemif_probe(struct platform_device *pdev) | |||
| 411 | if (ret < 0) | 411 | if (ret < 0) |
| 412 | goto error; | 412 | goto error; |
| 413 | } | 413 | } |
| 414 | } else { | 414 | } else if (pdata) { |
| 415 | for (i = 0; i < pdata->num_sub_devices; i++) { | 415 | for (i = 0; i < pdata->num_sub_devices; i++) { |
| 416 | pdata->sub_devices[i].dev.parent = dev; | 416 | pdata->sub_devices[i].dev.parent = dev; |
| 417 | ret = platform_device_register(&pdata->sub_devices[i]); | 417 | ret = platform_device_register(&pdata->sub_devices[i]); |
