2017-04-29 06:23:49

by Oleksij Rempel

[permalink] [raw]
Subject: Search for devices with Xtensa cores

Hallo all,

short version:
I'm looking for devices which use Xtensa and GCC/binutils patches used
to provide support for this devices.

long version:
this year started with inclusion of open-ath9k-htc-firmware to debian
*main* repository. As first we started to getting advantage of regular
compile tests. See results here:
https://tests.reproducible-builds.org/debian/rb-pkg/unstable/i386/open-ath9k-htc-firmware.html

Most of the problems which we currently get, are related to gcc xtensa
compiler.
In details: device specific patch set is used to provide our own
gcc/binutils version because Xtensa don't really have defined CPU cores.
As result, upstream compiler developers will never notice if some thing
will brake this patch set.

My hope is to provide upstream gcc support for commonly used by linux
community Xtensa cores.

So far i know about:
- Atheros ar9271 is identical with ar7010, LX2.1.0
- Atheros AR6002 Xtensa LX??
- Atheros AR6003 Xtensa LX??
- Atheros AR6103 Xtensa LX??
- Espressif ESP8266 Xtensa LX106

--
Regards,
Oleksij


Attachments:
signature.asc (213.00 B)
OpenPGP digital signature

2017-05-16 19:46:16

by Max Filippov

[permalink] [raw]
Subject: Re: Search for devices with Xtensa cores

HI Oleksij,

On Fri, Apr 28, 2017 at 11:23 PM, Oleksij Rempel <[email protected]> wrote:
> this year started with inclusion of open-ath9k-htc-firmware to debian
> *main* repository. As first we started to getting advantage of regular
> compile tests. See results here:
> https://tests.reproducible-builds.org/debian/rb-pkg/unstable/i386/open-ath9k-htc-firmware.html
>
> Most of the problems which we currently get, are related to gcc xtensa
> compiler.
> In details: device specific patch set is used to provide our own
> gcc/binutils version because Xtensa don't really have defined CPU cores.
> As result, upstream compiler developers will never notice if some thing
> will brake this patch set.

Below are the links to the xtensa-dynconfig repository and xtensa-plugin-env
branches in binutils-gdb and gcc repositories. Together it is a draft
implementation of dynamically configurable xtensa toolchain.
Could you please take a look at it and see if it's useful for you?

https://github.com/jcmvbkbc/xtensa-dynconfig
https://github.com/jcmvbkbc/binutils-gdb-xtensa/commits/xtensa-plugin-env
https://github.com/jcmvbkbc/gcc-xtensa/commits/xtensa-plugin-env

--
Thanks.
-- Max

2017-05-21 04:47:03

by Max Filippov

[permalink] [raw]
Subject: Re: Search for devices with Xtensa cores

On Sat, May 20, 2017 at 4:02 AM, Oleksij Rempel <[email protected]> wrote:
> Am 16.05.2017 um 21:46 schrieb Max Filippov:
>> On Fri, Apr 28, 2017 at 11:23 PM, Oleksij Rempel <[email protected]> wrote:
>>> this year started with inclusion of open-ath9k-htc-firmware to debian
>>> *main* repository. As first we started to getting advantage of regular
>>> compile tests. See results here:
>>> https://tests.reproducible-builds.org/debian/rb-pkg/unstable/i386/open-ath9k-htc-firmware.html
>>>
>>> Most of the problems which we currently get, are related to gcc xtensa
>>> compiler.
>>> In details: device specific patch set is used to provide our own
>>> gcc/binutils version because Xtensa don't really have defined CPU cores.
>>> As result, upstream compiler developers will never notice if some thing
>>> will brake this patch set.
>>
>> Below are the links to the xtensa-dynconfig repository and xtensa-plugin-env
>> branches in binutils-gdb and gcc repositories. Together it is a draft
>> implementation of dynamically configurable xtensa toolchain.
>> Could you please take a look at it and see if it's useful for you?
>>
>> https://github.com/jcmvbkbc/xtensa-dynconfig
>> https://github.com/jcmvbkbc/binutils-gdb-xtensa/commits/xtensa-plugin-env
>> https://github.com/jcmvbkbc/gcc-xtensa/commits/xtensa-plugin-env
>
> I didn't tested it jet, but it looks promising. How can i itegrate this
> two patches?
> https://github.com/olerem/open-ath9k-htc-firmware/tree/master/local/patches

Apply binutils.patch to the binutils-2.26.1 and then copy
binutils/bfd/xtensa-modules.c
and binutils/include/xtensa-config.h into xtensa-dynconfig/config/<config-name>.
And since the gdb part is missing you'd need to create two empty c source files:
xtensa-dynconfig/config/<config-name>/gdb/gdb/{xtensa-config.c,xtensa-xtregs.c}

--
Thanks.
-- Max

2017-05-20 11:03:24

by Oleksij Rempel

[permalink] [raw]
Subject: Re: Search for devices with Xtensa cores

Am 16.05.2017 um 21:46 schrieb Max Filippov:
> HI Oleksij,
>
> On Fri, Apr 28, 2017 at 11:23 PM, Oleksij Rempel <[email protected]> wrote:
>> this year started with inclusion of open-ath9k-htc-firmware to debian
>> *main* repository. As first we started to getting advantage of regular
>> compile tests. See results here:
>> https://tests.reproducible-builds.org/debian/rb-pkg/unstable/i386/open-ath9k-htc-firmware.html
>>
>> Most of the problems which we currently get, are related to gcc xtensa
>> compiler.
>> In details: device specific patch set is used to provide our own
>> gcc/binutils version because Xtensa don't really have defined CPU cores.
>> As result, upstream compiler developers will never notice if some thing
>> will brake this patch set.
>
> Below are the links to the xtensa-dynconfig repository and xtensa-plugin-env
> branches in binutils-gdb and gcc repositories. Together it is a draft
> implementation of dynamically configurable xtensa toolchain.
> Could you please take a look at it and see if it's useful for you?
>
> https://github.com/jcmvbkbc/xtensa-dynconfig
> https://github.com/jcmvbkbc/binutils-gdb-xtensa/commits/xtensa-plugin-env
> https://github.com/jcmvbkbc/gcc-xtensa/commits/xtensa-plugin-env

I didn't tested it jet, but it looks promising. How can i itegrate this
two patches?
https://github.com/olerem/open-ath9k-htc-firmware/tree/master/local/patches


--
Regards,
Oleksij


Attachments:
signature.asc (195.00 B)
OpenPGP digital signature