[coreboot] [PATCH] New Socket370 and Model 68x for CAR

Joseph Smith joe at settoplinux.org
Mon Jun 21 21:41:03 CEST 2010


On 06/20/2010 08:52 AM, Stefan Reinauer wrote:
>
> On 20.06.2010, at 14:44, Joseph Smith <joe at settoplinux.org> wrote:
>
>> On 06/20/2010 07:46 AM, Stefan Reinauer wrote:
>>> On 6/20/10 10:04 AM, Joseph Smith wrote:
>>>> Hello,
>>>> This patch adds a new socket for FCPGA370 and PGA370 CPU's. This new
>>>> socket (called socket_FC_PGA370) will make the CAR transition alot
>>>> easier. When done transitioning all the boards and cpu's the old
>>>> socket_PGA370 (kind of misleading for the FC's) can be deleted as well
>>>> as model_6xx. I will be testing a bunch of 370 cpu's this week so
>>>> hopefully the model_6xx will be no longer needed. This patch also
>>>> includes first CAR support for model_68x FCPGA CPU's.
>>>>
>>>> Build and boot tested.
>>>>
>>>> Signed-off by: Joseph Smith <joe at settoplinux.org>
>>> with two caveats:
>>>
>>> Acked-by: Stefan Reinauer <stepan at coresystems.de>
>>>
>>>> Index: src/cpu/intel/Kconfig
>>>> ===================================================================
>>>> --- src/cpu/intel/Kconfig (revision 5634)
>>>> +++ src/cpu/intel/Kconfig (working copy)
>>>>
>>>> @@ -17,6 +18,7 @@
>>>> source src/cpu/intel/bga956/Kconfig
>>>> source src/cpu/intel/slot_2/Kconfig
>>>> source src/cpu/intel/slot_1/Kconfig
>>>> +source src/cpu/intel/socket_FC_PGA370/Kconfig
>>>>
>>> FCPGA
>>
>> I wanted to keep them separated because Socket 370 supports PGA370 and
>> FCPGA370 processors, this way they are both covered.
>
> Hm ok
>
>>
>>
>>>> Index: src/cpu/intel/Makefile.inc
>>>> ===================================================================
>>>> --- src/cpu/intel/Makefile.inc (revision 5634)
>>>> +++ src/cpu/intel/Makefile.inc (working copy)
>>>> @@ -6,6 +6,7 @@
>>>> subdirs-$(CONFIG_CPU_INTEL_SOCKET_441) += socket_441
>>>> subdirs-$(CONFIG_CPU_INTEL_SOCKET_BGA956) += bga956
>>>> subdirs-$(CONFIG_CPU_INTEL_EP80579) += ep80579
>>>> +subdirs-$(CONFIG_CPU_INTEL_SOCKET_FC_PGA370) += socket_FC_PGA370
>>>>
>>> FCPGA
>>>> Index: src/cpu/intel/socket_FC_PGA370/Kconfig
>>>> ===================================================================
>>>> --- src/cpu/intel/socket_FC_PGA370/Kconfig (revision 0)
>>>> +++ src/cpu/intel/socket_FC_PGA370/Kconfig (revision 0)
>>>>
>>>
>>>> +
>>>> +config CPU_INTEL_SOCKET_FC_PGA370
>>>>
>>> FCPGA
>>>
>>>> Index: src/cpu/intel/socket_FC_PGA370/socket_FC_PGA370.c
>>>> ===================================================================
>>>> --- src/cpu/intel/socket_FC_PGA370/socket_FC_PGA370.c (revision 0)
>>>> +++ src/cpu/intel/socket_FC_PGA370/socket_FC_PGA370.c (revision 0)
>>>> @@ -0,0 +1,26 @@
>>>>
>>>
>>>> +
>>>> +#include<device/device.h>
>>>> +#include "chip.h"
>>>> +
>>>> +struct chip_operations cpu_intel_socket_FC_PGA370_ops = {
>>>>
>>> FCPGA
>>>> + CHIP_NAME("(FC)PGA370 CPU")
>>>> +};
>>>> Index: src/cpu/intel/socket_FC_PGA370/Makefile.inc
>>>> ===================================================================
>>>> --- src/cpu/intel/socket_FC_PGA370/Makefile.inc (revision 0)
>>>> +++ src/cpu/intel/socket_FC_PGA370/Makefile.inc (revision 0)
>>>> @@ -0,0 +1,30 @@
>>>> +##
>>>> +## This file is part of the coreboot project.
>>>> +##
>>>> +## Copyright (C) 2010 Joseph Smith<joe at settoplinux.org>
>>>> +##
>>>> +## This program is free software; you can redistribute it and/or
>>>> modify
>>>> +## it under the terms of the GNU General Public License as
>>>> published by
>>>> +## the Free Software Foundation; either version 2 of the License, or
>>>> +## (at your option) any later version.
>>>> +##
>>>> +## This program 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 General Public License for more details.
>>>> +##
>>>> +## You should have received a copy of the GNU General Public License
>>>> +## along with this program; if not, write to the Free Software
>>>> +## Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
>>>> 02110-1301 USA
>>>> +##
>>>> +
>>>> +obj-y += socket_FC_PGA370.o
>>>>
>>> FCPGA
>>>
>>>> +
>>>> +extern struct chip_operations cpu_intel_socket_FC_PGA370_ops;
>>>> +
>>>> +struct cpu_intel_socket_FC_PGA370_config {
>>>> +};
>>>>
>>> This should be FCPGA370 or mFCPGA370
>>
>> No, "m" means mobile chip. Socket 370 is not a mobile chip.
>>>
>
> Afaik the m in mfcpga means micro
>
>>>> Index: src/cpu/intel/model_68x/model_68x_init.c
>>>> ===================================================================
>>>> --- src/cpu/intel/model_68x/model_68x_init.c (revision 0)
>>>> +++ src/cpu/intel/model_68x/model_68x_init.c (revision 0)
>>>>
>>> [..]
>>>
>>>> +
>>>> +static struct cpu_device_id cpu_table[] = {
>>>>
>>> Do add 680 here too. In fact, if you add 680 all the others can be
>>> omitted.
>> ok, why? 680 will cover everything?
>
> Yes. It will mask the ID with fff0
>
>
>>
>>>> + { X86_VENDOR_INTEL, 0x0681 },
>>>> + { X86_VENDOR_INTEL, 0x0683 },
>>>> + { X86_VENDOR_INTEL, 0x0686 },
>>>> + { X86_VENDOR_INTEL, 0x068a },
>>>> + { 0, 0 },
>>>> +};
>>>> +
>>>> +static const struct cpu_driver driver __cpu_driver = {
>>>> + .ops =&cpu_dev_ops,
>>>> + .id_table = cpu_table,
>>>> +};
>>>> +
>>>
>>
Done, thanks r5636

-- 
Thanks,
Joseph Smith
Set-Top-Linux
www.settoplinux.org




More information about the coreboot mailing list