[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [PATCH rc4 24/29] hw/avr: Add some ATmega microcontrollers
From: |
Aleksandar Markovic |
Subject: |
Re: [PATCH rc4 24/29] hw/avr: Add some ATmega microcontrollers |
Date: |
Fri, 31 Jan 2020 10:40:33 +0100 |
On Fri, Jan 31, 2020 at 10:35 AM Thomas Huth <address@hidden> wrote:
>
> On 31/01/2020 05.11, Aleksandar Markovic wrote:
> > On Fri, Jan 31, 2020 at 4:45 AM Aleksandar Markovic
> > <address@hidden> wrote:
> >>
> >> On Fri, Jan 31, 2020 at 4:09 AM Philippe Mathieu-Daudé <address@hidden>
> >> 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
> >>> <address@hidden> wrote:
> >>>> On Fri, Jan 31, 2020 at 1:03 AM Aleksandar Markovic
> >>>> <address@hidden> wrote:
> >>>>>
> >>>>> From: Philippe Mathieu-Daudé <address@hidden>
> >>>>>
> >>>>> 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 <address@hidden>
> >>>>>
> >>>>> Signed-off-by: Philippe Mathieu-Daudé <address@hidden>
> >>>>> Signed-off-by: Richard Henderson <address@hidden>
> >>>>> Signed-off-by: Aleksandar Markovic <address@hidden>
> >>>>> ---
> >>>>> 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
>
- [PATCH rc4 25/29] hw/avr: Add some Arduino boards, (continued)
- [PATCH rc4 25/29] hw/avr: Add some Arduino boards, Aleksandar Markovic, 2020/01/30
- [PATCH rc4 15/29] target/avr: Add instruction disassembly function, Aleksandar Markovic, 2020/01/30
- [PATCH rc4 27/29] tests/boot-serial-test: Test some Arduino boards (AVR based), Aleksandar Markovic, 2020/01/30
- [PATCH rc4 28/29] tests/acceptance: Test the Arduino MEGA2560 board, Aleksandar Markovic, 2020/01/30
- [PATCH rc4 24/29] hw/avr: Add some ATmega microcontrollers, Aleksandar Markovic, 2020/01/30
- Re: [PATCH rc4 24/29] hw/avr: Add some ATmega microcontrollers, Aleksandar Markovic, 2020/01/30
- Re: [PATCH rc4 24/29] hw/avr: Add some ATmega microcontrollers, Philippe Mathieu-Daudé, 2020/01/30
- Re: [PATCH rc4 24/29] hw/avr: Add some ATmega microcontrollers, Aleksandar Markovic, 2020/01/30
- Re: [PATCH rc4 24/29] hw/avr: Add some ATmega microcontrollers, Aleksandar Markovic, 2020/01/30
- Re: [PATCH rc4 24/29] hw/avr: Add some ATmega microcontrollers, Thomas Huth, 2020/01/31
- Re: [PATCH rc4 24/29] hw/avr: Add some ATmega microcontrollers,
Aleksandar Markovic <=
- Re: [PATCH rc4 24/29] hw/avr: Add some ATmega microcontrollers, Philippe Mathieu-Daudé, 2020/01/31
- Re: [PATCH rc4 24/29] hw/avr: Add some ATmega microcontrollers, Aleksandar Markovic, 2020/01/31
[PATCH rc4 17/29] hw/timer: Add limited support for AVR 16-bit timer peripheral, Aleksandar Markovic, 2020/01/30
Re: [PATCH rc4 00/29] target/avr merger, Aleksandar Markovic, 2020/01/30
[PATCH 0/2] !fixup target/avr merger-rc4, Philippe Mathieu-Daudé, 2020/01/30