All of lore.kernel.org
 help / color / mirror / Atom feed
From: ryan@bluewatersys.com (Ryan Mallon)
To: linux-arm-kernel@lists.infradead.org
Subject: [PATCH 05/14] at91: use structure to store the current soc
Date: Tue, 03 May 2011 08:25:38 +1200	[thread overview]
Message-ID: <4DBF1342.6070406@bluewatersys.com> (raw)
In-Reply-To: <20110502153852.GI1212@game.jcrosoft.org>

On 05/03/2011 03:38 AM, Jean-Christophe PLAGNIOL-VILLARD wrote:
> On 16:04 Thu 28 Apr     , Andrew Victor wrote:
>> hi,
>>
>>>> If this eventually reduces code size then I think it is useful, but
>>>> otherwise I'm not sure I see the point?
>>> It's on purpose as the dbgu physical address is not at the same place
>>> so read the other register really does not impact the chip but if we do it
>>> later duting the boot or the life to the kernel it's an other story
>>>
>>> so the split between __cpu_is and cpu_is is necessarly
>>>
>>> all of this work is in preparation to allow multiple soc in the same kernel
>>> that's also why I map the system controller the same way on all at91 arm9
>>
>> The cpu_is() or__cpu_is() perform a at91_sys_read() of one of the DBGU
>> registers.
>>
>> But the address of the DBGU differs between CPUs regardless if you map
>> the system controller the same:
>>    at572d940hf.h:#define AT91_DBGU	(0xfffff200 - AT91_BASE_SYS)
>>    at91cap9.h:#define AT91_DBGU	(0xffffee00 - AT91_BASE_SYS)
>>    at91rm9200.h:#define AT91_DBGU	(0xfffff200 - AT91_BASE_SYS)
>>    at91sam9260.h:#define AT91_DBGU	(0xfffff200 - AT91_BASE_SYS)
>>    at91sam9261.h:#define AT91_DBGU	(0xfffff200 - AT91_BASE_SYS)
>>    at91sam9263.h:#define AT91_DBGU	(0xffffee00 - AT91_BASE_SYS)
>>    at91sam9g45.h:#define AT91_DBGU	(0xffffee00 - AT91_BASE_SYS)
>>    at91sam9rl.h:#define AT91_DBGU	(0xfffff200 - AT91_BASE_SYS)
>>
>> So I don't see how you can "detect" the CPU without first knowing
>> which CPU and therefore where the DBGU register is anyway.
>> And probing different addresses for a value is not an acceptable solution.
> we have 2 different register 0xfffff200 and 0xffffee00
> which are the DBGU or the PIOA
> 
> and on the PIOA at the offset 0x40 if you try to read the cpu will always
> return 0x0, and have no effect on the soc
> 
> so I do not think there is a big issue to read 2 register to detect the soc
> automatically

This does rely on Atmel not making another soc which has the DBGU at an
address which does cause a conflict (low possibility, but would be very
annoying). It's also really ugly to read random registers until we get
the one we want.

However, I still do not see what is wrong with the current approach of
the boards explicitly specifying the soc type. The correct soc/cpu type
can already be determined without changing the code. So why are we
changing the code?

~Ryan

-- 
Bluewater Systems Ltd - ARM Technology Solution Centre

Ryan Mallon         		5 Amuri Park, 404 Barbadoes St
ryan at bluewatersys.com         	PO Box 13 889, Christchurch 8013
http://www.bluewatersys.com	New Zealand
Phone: +64 3 3779127		Freecall: Australia 1800 148 751
Fax:   +64 3 3779135			  USA 1800 261 2934

  reply	other threads:[~2011-05-02 20:25 UTC|newest]

Thread overview: 85+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2011-04-25 18:08 [PATCH 0/14] at91: factorize soc init and switch to early platform Jean-Christophe PLAGNIOL-VILLARD
2011-04-25 18:31 ` [PATCH 01/14] at91rm9200: introduce at91rm9200_set_type to specficy cpu package Jean-Christophe PLAGNIOL-VILLARD
2011-04-25 18:31 ` [PATCH 02/14] at91: introduce commom AT91_BASE_SYS Jean-Christophe PLAGNIOL-VILLARD
2011-04-25 21:48   ` Ryan Mallon
2011-04-26  4:27     ` Jean-Christophe PLAGNIOL-VILLARD
2011-04-25 18:31 ` [PATCH 03/14] at91: factorize at91 interrupts init to soc Jean-Christophe PLAGNIOL-VILLARD
2011-04-25 21:52   ` Ryan Mallon
2011-04-25 22:11   ` H Hartley Sweeten
2011-04-26 17:29     ` Jean-Christophe PLAGNIOL-VILLARD
2011-04-26 22:04       ` Andrew Victor
2011-04-26 23:39         ` Jean-Christophe PLAGNIOL-VILLARD
2011-04-28 11:43   ` Russell King - ARM Linux
2011-04-25 18:31 ` [PATCH 04/14 v2] at91: merge board usb-a9260 and usb-a9263 together Jean-Christophe PLAGNIOL-VILLARD
2011-04-25 18:31 ` [PATCH 05/14] at91: use structure to store the current soc Jean-Christophe PLAGNIOL-VILLARD
2011-04-25 22:08   ` Ryan Mallon
2011-04-26  4:21     ` Jean-Christophe PLAGNIOL-VILLARD
2011-04-26  4:44       ` Ryan Mallon
2011-04-26  6:42         ` Jean-Christophe PLAGNIOL-VILLARD
2011-04-26 20:22           ` Ryan Mallon
2011-04-26 23:45             ` Jean-Christophe PLAGNIOL-VILLARD
2011-04-27  0:13               ` Ryan Mallon
2011-04-27  1:27                 ` Jean-Christophe PLAGNIOL-VILLARD
2011-04-27  1:47                   ` Ryan Mallon
2011-04-27  3:18                     ` Jean-Christophe PLAGNIOL-VILLARD
2011-04-27  3:41                       ` Ryan Mallon
2011-04-28 14:04       ` Andrew Victor
2011-04-28 14:10         ` Jean-Christophe PLAGNIOL-VILLARD
2011-04-28 20:20           ` Ryan Mallon
2011-04-28 23:06             ` Jean-Christophe PLAGNIOL-VILLARD
2011-04-28 23:24               ` Ryan Mallon
2011-04-29  2:10                 ` Ryan Mallon
2011-04-29  8:32                   ` Jean-Christophe PLAGNIOL-VILLARD
2011-04-29  8:35                 ` Jean-Christophe PLAGNIOL-VILLARD
2011-04-29  8:50                   ` Ryan Mallon
2011-05-02 15:38         ` Jean-Christophe PLAGNIOL-VILLARD
2011-05-02 20:25           ` Ryan Mallon [this message]
2011-05-02 20:24             ` Jean-Christophe PLAGNIOL-VILLARD
2011-05-02 20:38               ` Ryan Mallon
2011-05-02 20:51                 ` Jean-Christophe PLAGNIOL-VILLARD
2011-05-02 21:27                   ` Ryan Mallon
2011-05-02 21:29                     ` Jean-Christophe PLAGNIOL-VILLARD
2011-05-02 22:05                       ` Ryan Mallon
2011-05-02 22:06                         ` Jean-Christophe PLAGNIOL-VILLARD
2011-05-02 22:32                           ` Ryan Mallon
2011-05-02 22:41                             ` Jean-Christophe PLAGNIOL-VILLARD
2011-05-02 23:16                     ` Russell King - ARM Linux
2011-05-02 23:16                       ` Jean-Christophe PLAGNIOL-VILLARD
2011-04-25 18:31 ` [PATCH 06/14 v3] at91: switch to CLKDEV_LOOKUP Jean-Christophe PLAGNIOL-VILLARD
2011-04-25 18:31 ` [PATCH 07/14] at91: switch gpio to early platfrom device Jean-Christophe PLAGNIOL-VILLARD
2011-04-25 22:51   ` Ryan Mallon
2011-04-26  4:11     ` Jean-Christophe PLAGNIOL-VILLARD
2011-04-25 18:31 ` [PATCH 08/14] at91: move gpio to drivers/gpio Jean-Christophe PLAGNIOL-VILLARD
2011-04-25 18:31 ` [PATCH 09/14] at91: switch pit timer to early platform devices Jean-Christophe PLAGNIOL-VILLARD
2011-04-28  5:07   ` Ryan Mallon
2011-04-28 11:23   ` Andrew Victor
2011-04-28 11:34     ` Russell King - ARM Linux
2011-04-28 13:15       ` Jean-Christophe PLAGNIOL-VILLARD
2011-04-28 16:56         ` Andrew Victor
2011-04-28 17:33           ` Jean-Christophe PLAGNIOL-VILLARD
2011-04-28 18:15           ` Russell King - ARM Linux
2011-04-28 20:47             ` Andrew Victor
2011-04-28 21:46               ` Russell King - ARM Linux
2011-04-28 23:38                 ` Jean-Christophe PLAGNIOL-VILLARD
2011-04-29  9:28                   ` Russell King - ARM Linux
2011-04-30  1:36                     ` Jean-Christophe PLAGNIOL-VILLARD
2011-05-08 10:08                       ` Russell King - ARM Linux
2011-05-08 10:44                         ` Jean-Christophe PLAGNIOL-VILLARD
2011-04-29  7:55               ` Greg Ungerer
2011-04-29  6:08       ` Tony Lindgren
2011-04-29  8:31         ` Jean-Christophe PLAGNIOL-VILLARD
2011-04-25 18:31 ` [PATCH 10/14] at91: switch st " Jean-Christophe PLAGNIOL-VILLARD
2011-04-25 18:40 ` [PATCH 11/14] at91: move pit timer to drivers/clocksource Jean-Christophe PLAGNIOL-VILLARD
2011-04-25 19:14 ` [PATCH 12/14] at91: move st " Jean-Christophe PLAGNIOL-VILLARD
2011-04-26  1:11 ` [PATCH 13/14] at91: move register clocks to soc generic init Jean-Christophe PLAGNIOL-VILLARD
2011-04-26  3:13   ` Ryan Mallon
2011-04-26  1:11 ` [PATCH 14/14] at91: move clock subsystem init " Jean-Christophe PLAGNIOL-VILLARD
2011-04-26  3:13   ` Ryan Mallon
2011-04-26  4:13     ` Jean-Christophe PLAGNIOL-VILLARD
2011-04-26  4:32       ` Ryan Mallon
2011-04-26  4:32         ` Jean-Christophe PLAGNIOL-VILLARD
2011-04-27 21:13 ` [PATCH 0/14] at91: factorize soc init and switch to early platform Ryan Mallon
2011-04-28  2:26   ` Jean-Christophe PLAGNIOL-VILLARD
2011-04-28  2:41   ` Jean-Christophe PLAGNIOL-VILLARD
2011-04-28  3:59     ` Ryan Mallon
2011-04-28  4:14       ` Jean-Christophe PLAGNIOL-VILLARD

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=4DBF1342.6070406@bluewatersys.com \
    --to=ryan@bluewatersys.com \
    --cc=linux-arm-kernel@lists.infradead.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.