On Fri, Jan 31, 2020 at 10:35 AM Thomas Huth <th...@redhat.com> wrote: > > On 31/01/2020 05.11, Aleksandar Markovic wrote: > > On Fri, Jan 31, 2020 at 4:45 AM Aleksandar Markovic > > <aleksandar.m.m...@gmail.com> wrote: > >> > >> On Fri, Jan 31, 2020 at 4:09 AM Philippe Mathieu-Daudé <f4...@amsat.org> > >> wrote: > >>> > >>> Hi Aleksandar, > >>> > >>> Cc'ing Thomas & Daniel who are not lawyers but tried to explain me few > >>> times how licensing works. > >>> > >>> On Fri, Jan 31, 2020 at 2:56 AM Aleksandar Markovic > >>> <aleksandar.m.m...@gmail.com> wrote: > >>>> On Fri, Jan 31, 2020 at 1:03 AM Aleksandar Markovic > >>>> <aleksandar.marko...@rt-rk.com> wrote: > >>>>> > >>>>> From: Philippe Mathieu-Daudé <f4...@amsat.org> > >>>>> > >>>>> Add some AVR microcontrollers from the ATmega family: > >>>>> > >>>>> - middle range: ATmega168 and ATmega328 > >>>>> - high range: ATmega1280 and ATmega2560 > >>>>> > >>>>> For product comparison: > >>>>> > >>>>> https://www.microchip.com/wwwproducts/ProductCompare/ATmega168P/ATmega328P > >>>>> > >>>>> https://www.microchip.com/wwwproducts/ProductCompare/ATmega1280/ATmega2560 > >>>>> > >>>>> Datasheets: > >>>>> > >>>>> http://ww1.microchip.com/downloads/en/DeviceDoc/ATmega48A-PA-88A-PA-168A-PA-328-P-DS-DS40002061A.pdf > >>>>> > >>>>> http://ww1.microchip.com/downloads/en/DeviceDoc/Atmel-2549-8-bit-AVR-Microcontroller-ATmega640-1280-1281-2560-2561_datasheet.pdf > >>>>> > >>>>> [AM: Remove word 'Atmel' from filenames and all elements of code] > >>>>> Suggested-by: Aleksandar Markovic <aleksandar.m.m...@gmail.com> > >>>>> > >>>>> Signed-off-by: Philippe Mathieu-Daudé <f4...@amsat.org> > >>>>> Signed-off-by: Richard Henderson <richard.hender...@linaro.org> > >>>>> Signed-off-by: Aleksandar Markovic <aleksandar.m.m...@gmail.com> > >>>>> --- > >>>>> hw/avr/Kconfig | 5 + > >>>>> hw/avr/Makefile.objs | 1 + > >>>>> hw/avr/atmega.c | 470 > >>>>> +++++++++++++++++++++++++++++++++++++++++++++++++++ > >>>>> hw/avr/atmega.h | 48 ++++++ > >>>>> 4 files changed, 524 insertions(+) > >>>>> create mode 100644 hw/avr/Kconfig > >>>>> create mode 100644 hw/avr/atmega.c > >>>>> create mode 100644 hw/avr/atmega.h > >>>>> > >>>>> diff --git a/hw/avr/Kconfig b/hw/avr/Kconfig > >>>>> new file mode 100644 > >>>>> index 0000000..9e6527e > >>>>> --- /dev/null > >>>>> +++ b/hw/avr/Kconfig > >>>>> @@ -0,0 +1,5 @@ > >>>>> +config AVR_ATMEGA_MCU > >>>>> + bool > >>>>> + select AVR_TIMER16 > >>>>> + select AVR_USART > >>>>> + select AVR_POWER > >>>>> diff --git a/hw/avr/Makefile.objs b/hw/avr/Makefile.objs > >>>>> index 123f174..af0fdde 100644 > >>>>> --- a/hw/avr/Makefile.objs > >>>>> +++ b/hw/avr/Makefile.objs > >>>>> @@ -1 +1,2 @@ > >>>>> obj-y += boot.o > >>>>> +obj-$(CONFIG_AVR_ATMEGA_MCU) += atmega.o > >>>>> diff --git a/hw/avr/atmega.c b/hw/avr/atmega.c > >>>>> new file mode 100644 > >>>>> index 0000000..8cdf28b > >>>>> --- /dev/null > >>>>> +++ b/hw/avr/atmega.c > >>>>> @@ -0,0 +1,470 @@ > >>>>> +/* > >>>>> + * QEMU ATmega MCU > >>>>> + * > >>>>> + * Copyright (c) 2019 Philippe Mathieu-Daudé > >>>>> + * > >>>>> + * This work is licensed under the terms of the GNU GPLv2 or later. > >>>>> + * See the COPYING file in the top-level directory. > >>>>> + * SPDX-License-Identifier: GPL-2.0-or-later > >>>>> + */ > >>>> > >>>> Philippe, > >>>> > >>>> Michael and I already agreed at some moment that the whole target AVR > >>>> should have harmonized licenses, and Sarrah agreed to change her > >>>> license to achieve this. Do you agree to harmonize your licenses with > >>>> the rest of the project? (This would mean changing the preable, but of > >>>> course you remain copyright carrier as is now.) > >>> > >>> What license do you want to use? I always use "GPLv2 or later" with > >>> QEMU, mostly following what the others do. > >>> > >>> Per https://wiki.qemu.org/License: > >>> > >>> Source files with no licensing information are released under the > >>> GNU General Public License, version 2 or (at your option) any later > >>> version. > >>> > >>> Reading about licensing is not fun :( > >>> > >> > >> Philippe, here is the deal: All new files for AVR platform has the > >> following preamble, that Michael chose from the outset: > >> > >> + * This library is free software; you can redistribute it and/or > >> + * modify it under the terms of the GNU Lesser General Public > >> + * License as published by the Free Software Foundation; either > >> + * version 2.1 of the License, or (at your option) any later version. > >> + * > >> + * This library is distributed in the hope that it will be useful, > >> + * but WITHOUT ANY WARRANTY; without even the implied warranty of > >> + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU > >> + * Lesser General Public License for more details. > >> + * > >> + * You should have received a copy of the GNU Lesser General Public > >> + * License along with this library; if not, see > >> + * <http://www.gnu.org/licenses/lgpl-2.1.html> > >> > >> Now, it is preferable that licenses are harmonized within a module, > >> and I ask you to change the preamble to be the same as the rest of the > >> module, that is all. This practically means LGPL2.1+later instead > >> LGPL2.0+later. I think it is reasonable that we want to simplify out > >> license stuff, not complicate it with different licenses within a > >> module. There are examples of complications in cases of different > >> license within the same module, so it would be ideal if we avoid such > >> situations. > >> > > > > I didn't mean to scare you, I am just a developer like you, and I want > > to avoid thinking about licenses, and think of our real work, so, I > > gather, in my layman terms, it is better to have the same license for > > the new platform in its entirety, if possible, that is all. :) > > This is all part of QEMU, and QEMU is licensed under the GPLv2. If > someone wants to use a less strict license for their own code that is > still compatible with the GPLv2, like the LGPLv2.1, that's fine. But I > think if Philippe does not like to release his code under the LGPL, and > wants to use GPL instead, you can not force him to use LGPL here. It's > the decision of Philippe what he wants to use for his code. >
It is his decision, but it can be reasonable or not so reasonable. I think it is logical that he follows the license model of the module he contributes to, isn't it? Aleksandar > Thomas >