[alsa-devel] [PATCH] soundwire: cdns: Fix compilation error on arm64

Jan Kotas jank at cadence.com
Tue Apr 16 10:43:53 CEST 2019


> On 14 Apr 2019, at 11:44, Vinod Koul <vkoul at kernel.org> wrote:
> 
> 
> On 04-04-19, 09:12, Jan Kotas wrote:
>> On arm64 the cadence_master.c file doesn't compile.
>> 
>> readl and writel are undefined.
>> This patch fixes that by including io.h.
> 
> And I cant verify that without hacking kconfig to force compile the lib.

I’m working on a new driver which uses the SOUNDWIRE_CADENCE:
Here’s a diff of the Kconfig, it’s a very early stage.

diff --git a/drivers/soundwire/Kconfig b/drivers/soundwire/Kconfig
index 19c8efb9a..90d569e03 100644
--- a/drivers/soundwire/Kconfig
+++ b/drivers/soundwire/Kconfig
@@ -34,4 +34,10 @@ config SOUNDWIRE_INTEL
      enable this config option to get the SoundWire support for that
      device.

+config SOUNDWIRE_CADENCE_PLATFORM
+   tristate "SoundWire Cadence Platform driver"
+   select SOUNDWIRE_CADENCE
+   select SOUNDWIRE_BUS
+   help
+     SoundWire Cadence Platform drivers.
 endif

I haven’t modified any of the existing lines. 
SOUNDWIRE_CADENCE doesn’t depend on anything, except SOUNDWIRE,
so it should work, when selected.

> On 15 Apr 2019, at 14:41, Pierre-Louis Bossart <pierre-louis.bossart at linux.intel.com> wrote:
> 
> 
>>> diff --git a/drivers/soundwire/cadence_master.c b/drivers/soundwire/cadence_master.c
>>> index cb6a331f4..0b5bcc209 100644
>>> --- a/drivers/soundwire/cadence_master.c
>>> +++ b/drivers/soundwire/cadence_master.c
>>> @@ -9,6 +9,7 @@
>>>  #include <linux/delay.h>
>>>  #include <linux/device.h>
>>>  #include <linux/interrupt.h>
>>> +#include <linux/io.h>
>> Why not add asm/io.h which is the header that actually defines
>> readl/writel?
> 
> The vast majority of kernel code uses linux/io.h.
> We use linux/io.h for SOF as well.

I use linux/io.h in my other drivers too.

> 
>>>  #include <linux/module.h>
>>>  #include <linux/mod_devicetable.h>
>>>  #include <linux/soundwire/sdw_registers.h>
>>> -- 
>>> 2.15.0



More information about the Alsa-devel mailing list