All the mail mirrored from lore.kernel.org
 help / color / mirror / Atom feed
* [U-Boot] [PATCH] x86: Fix RTC build error on ivybridge
@ 2015-07-21  7:55 Bin Meng
  2015-07-21 12:19 ` Albert ARIBAUD
  0 siblings, 1 reply; 5+ messages in thread
From: Bin Meng @ 2015-07-21  7:55 UTC (permalink / raw
  To: u-boot

For some unknown reason, buildman does not report build error
when building commit 06c4b7e. This commit is to correct the
build error and needs to be squashed into commit 06c4b7e.

Signed-off-by: Bin Meng <bmeng.cn@gmail.com>
---

 arch/x86/cpu/ivybridge/lpc.c   |  1 -
 arch/x86/cpu/ivybridge/sdram.c | 32 ++++++++++++++++++++++++--------
 arch/x86/dts/rtc.dtsi          |  1 +
 3 files changed, 25 insertions(+), 9 deletions(-)

diff --git a/arch/x86/cpu/ivybridge/lpc.c b/arch/x86/cpu/ivybridge/lpc.c
index bc1a0f0..3efd3e8 100644
--- a/arch/x86/cpu/ivybridge/lpc.c
+++ b/arch/x86/cpu/ivybridge/lpc.c
@@ -252,7 +252,6 @@ static void pch_rtc_init(pci_dev_t dev)
 	/* TODO: Handle power failure */
 	if (rtc_failed)
 		printf("RTC power failed\n");
-	rtc_init();
 }
 
 /* CougarPoint PCH Power Management init */
diff --git a/arch/x86/cpu/ivybridge/sdram.c b/arch/x86/cpu/ivybridge/sdram.c
index af907c5..7f3b13d 100644
--- a/arch/x86/cpu/ivybridge/sdram.c
+++ b/arch/x86/cpu/ivybridge/sdram.c
@@ -128,6 +128,14 @@ static int get_mrc_entry(struct udevice **devp, struct fmap_entry *entry)
 static int read_seed_from_cmos(struct pei_data *pei_data)
 {
 	u16 c1, c2, checksum, seed_checksum;
+	struct udevice *dev;
+	int rcode = 0;
+
+	rcode = uclass_get_device(UCLASS_RTC, 0, &dev);
+	if (rcode) {
+		debug("Cannot find RTC: err=%d\n", rcode);
+		return -ENODEV;
+	}
 
 	/*
 	 * Read scrambler seeds from CMOS RAM. We don't want to store them in
@@ -135,11 +143,11 @@ static int read_seed_from_cmos(struct pei_data *pei_data)
 	 * the flash too much. So we store these in CMOS and the large MRC
 	 * data in SPI flash.
 	 */
-	pei_data->scrambler_seed = rtc_read32(CMOS_OFFSET_MRC_SEED);
+	rtc_read32(dev, CMOS_OFFSET_MRC_SEED, &pei_data->scrambler_seed);
 	debug("Read scrambler seed    0x%08x from CMOS 0x%02x\n",
 	      pei_data->scrambler_seed, CMOS_OFFSET_MRC_SEED);
 
-	pei_data->scrambler_seed_s3 = rtc_read32(CMOS_OFFSET_MRC_SEED_S3);
+	rtc_read32(dev, CMOS_OFFSET_MRC_SEED_S3, &pei_data->scrambler_seed_s3);
 	debug("Read S3 scrambler seed 0x%08x from CMOS 0x%02x\n",
 	      pei_data->scrambler_seed_s3, CMOS_OFFSET_MRC_SEED_S3);
 
@@ -150,8 +158,8 @@ static int read_seed_from_cmos(struct pei_data *pei_data)
 				 sizeof(u32));
 	checksum = add_ip_checksums(sizeof(u32), c1, c2);
 
-	seed_checksum = rtc_read8(CMOS_OFFSET_MRC_SEED_CHK);
-	seed_checksum |= rtc_read8(CMOS_OFFSET_MRC_SEED_CHK + 1) << 8;
+	seed_checksum = rtc_read8(dev, CMOS_OFFSET_MRC_SEED_CHK);
+	seed_checksum |= rtc_read8(dev, CMOS_OFFSET_MRC_SEED_CHK + 1) << 8;
 
 	if (checksum != seed_checksum) {
 		debug("%s: invalid seed checksum\n", __func__);
@@ -223,13 +231,21 @@ static int build_mrc_data(struct mrc_data_container **datap)
 static int write_seeds_to_cmos(struct pei_data *pei_data)
 {
 	u16 c1, c2, checksum;
+	struct udevice *dev;
+	int rcode = 0;
+
+	rcode = uclass_get_device(UCLASS_RTC, 0, &dev);
+	if (rcode) {
+		debug("Cannot find RTC: err=%d\n", rcode);
+		return -ENODEV;
+	}
 
 	/* Save the MRC seed values to CMOS */
-	rtc_write32(CMOS_OFFSET_MRC_SEED, pei_data->scrambler_seed);
+	rtc_write32(dev, CMOS_OFFSET_MRC_SEED, pei_data->scrambler_seed);
 	debug("Save scrambler seed    0x%08x to CMOS 0x%02x\n",
 	      pei_data->scrambler_seed, CMOS_OFFSET_MRC_SEED);
 
-	rtc_write32(CMOS_OFFSET_MRC_SEED_S3, pei_data->scrambler_seed_s3);
+	rtc_write32(dev, CMOS_OFFSET_MRC_SEED_S3, pei_data->scrambler_seed_s3);
 	debug("Save s3 scrambler seed 0x%08x to CMOS 0x%02x\n",
 	      pei_data->scrambler_seed_s3, CMOS_OFFSET_MRC_SEED_S3);
 
@@ -240,8 +256,8 @@ static int write_seeds_to_cmos(struct pei_data *pei_data)
 				 sizeof(u32));
 	checksum = add_ip_checksums(sizeof(u32), c1, c2);
 
-	rtc_write8(CMOS_OFFSET_MRC_SEED_CHK, checksum & 0xff);
-	rtc_write8(CMOS_OFFSET_MRC_SEED_CHK + 1, (checksum >> 8) & 0xff);
+	rtc_write8(dev, CMOS_OFFSET_MRC_SEED_CHK, checksum & 0xff);
+	rtc_write8(dev, CMOS_OFFSET_MRC_SEED_CHK + 1, (checksum >> 8) & 0xff);
 
 	return 0;
 }
diff --git a/arch/x86/dts/rtc.dtsi b/arch/x86/dts/rtc.dtsi
index 93dacd7..1797e04 100644
--- a/arch/x86/dts/rtc.dtsi
+++ b/arch/x86/dts/rtc.dtsi
@@ -1,6 +1,7 @@
 / {
 	rtc {
 		compatible = "motorola,mc146818";
+		u-boot,dm-pre-reloc;
 		reg = <0x70 2>;
 	};
 };
-- 
1.8.2.1

^ permalink raw reply related	[flat|nested] 5+ messages in thread

* [U-Boot] [PATCH] x86: Fix RTC build error on ivybridge
  2015-07-21  7:55 [U-Boot] [PATCH] x86: Fix RTC build error on ivybridge Bin Meng
@ 2015-07-21 12:19 ` Albert ARIBAUD
  2015-07-21 12:21   ` Bin Meng
  0 siblings, 1 reply; 5+ messages in thread
From: Albert ARIBAUD @ 2015-07-21 12:19 UTC (permalink / raw
  To: u-boot

Hello Bin,

On Tue, 21 Jul 2015 00:55:13 -0700, Bin Meng <bmeng.cn@gmail.com> wrote:
> For some unknown reason, buildman does not report build error
> when building commit 06c4b7e. This commit is to correct the
> build error and needs to be squashed into commit 06c4b7e.

Which repository and branch contains this commit 06c4b7e?
I cannot find it at all under u-boot/master.

Besides, fixes are not done by squashing commit.

Amicalement,
-- 
Albert.

^ permalink raw reply	[flat|nested] 5+ messages in thread

* [U-Boot] [PATCH] x86: Fix RTC build error on ivybridge
  2015-07-21 12:19 ` Albert ARIBAUD
@ 2015-07-21 12:21   ` Bin Meng
  2015-07-21 21:06     ` Albert ARIBAUD
  0 siblings, 1 reply; 5+ messages in thread
From: Bin Meng @ 2015-07-21 12:21 UTC (permalink / raw
  To: u-boot

Hi Albert,

On Tue, Jul 21, 2015 at 8:19 PM, Albert ARIBAUD
<albert.u.boot@aribaud.net> wrote:
> Hello Bin,
>
> On Tue, 21 Jul 2015 00:55:13 -0700, Bin Meng <bmeng.cn@gmail.com> wrote:
>> For some unknown reason, buildman does not report build error
>> when building commit 06c4b7e. This commit is to correct the
>> build error and needs to be squashed into commit 06c4b7e.
>
> Which repository and branch contains this commit 06c4b7e?
> I cannot find it at all under u-boot/master.

It is on the u-boot-x86/master.

> Besides, fixes are not done by squashing commit.
>

Yep, I know that once something goes into mainline, it is not allowed
to change any history. As this is on the u-boot-x86/master and Simon
has not asked Tom to pull, I believe it is OK.

Regards,
Bin

^ permalink raw reply	[flat|nested] 5+ messages in thread

* [U-Boot] [PATCH] x86: Fix RTC build error on ivybridge
  2015-07-21 12:21   ` Bin Meng
@ 2015-07-21 21:06     ` Albert ARIBAUD
  2015-07-22  1:52       ` Simon Glass
  0 siblings, 1 reply; 5+ messages in thread
From: Albert ARIBAUD @ 2015-07-21 21:06 UTC (permalink / raw
  To: u-boot

Hello Bin,

On Tue, 21 Jul 2015 20:21:28 +0800, Bin Meng <bmeng.cn@gmail.com> wrote:
> Hi Albert,
> 
> On Tue, Jul 21, 2015 at 8:19 PM, Albert ARIBAUD
> <albert.u.boot@aribaud.net> wrote:
> > Hello Bin,
> >
> > On Tue, 21 Jul 2015 00:55:13 -0700, Bin Meng <bmeng.cn@gmail.com> wrote:
> >> For some unknown reason, buildman does not report build error
> >> when building commit 06c4b7e. This commit is to correct the
> >> build error and needs to be squashed into commit 06c4b7e.
> >
> > Which repository and branch contains this commit 06c4b7e?
> > I cannot find it at all under u-boot/master.
> 
> It is on the u-boot-x86/master.

Ok, thanks.

> > Besides, fixes are not done by squashing commit.
> >
> 
> Yep, I know that once something goes into mainline, it is not allowed
> to change any history. As this is on the u-boot-x86/master and Simon
> has not asked Tom to pull, I believe it is OK.

Fine then.

> Regards,
> Bin

Amicalement,
-- 
Albert.

^ permalink raw reply	[flat|nested] 5+ messages in thread

* [U-Boot] [PATCH] x86: Fix RTC build error on ivybridge
  2015-07-21 21:06     ` Albert ARIBAUD
@ 2015-07-22  1:52       ` Simon Glass
  0 siblings, 0 replies; 5+ messages in thread
From: Simon Glass @ 2015-07-22  1:52 UTC (permalink / raw
  To: u-boot

Hi Bin,

On 21 July 2015 at 15:06, Albert ARIBAUD <albert.u.boot@aribaud.net> wrote:
> Hello Bin,
>
> On Tue, 21 Jul 2015 20:21:28 +0800, Bin Meng <bmeng.cn@gmail.com> wrote:
>> Hi Albert,
>>
>> On Tue, Jul 21, 2015 at 8:19 PM, Albert ARIBAUD
>> <albert.u.boot@aribaud.net> wrote:
>> > Hello Bin,
>> >
>> > On Tue, 21 Jul 2015 00:55:13 -0700, Bin Meng <bmeng.cn@gmail.com> wrote:
>> >> For some unknown reason, buildman does not report build error
>> >> when building commit 06c4b7e. This commit is to correct the
>> >> build error and needs to be squashed into commit 06c4b7e.

You can use -C to force a reconfigure after every build. Otherwise it
defaults to an incremental build which will not reconfigure. It
automatically reconfigures if it gets an error, but does not look for
errors. This case is rare enough that I don't worry about it too much.

>> >
>> > Which repository and branch contains this commit 06c4b7e?
>> > I cannot find it at all under u-boot/master.
>>
>> It is on the u-boot-x86/master.
>
> Ok, thanks.
>
>> > Besides, fixes are not done by squashing commit.
>> >
>>
>> Yep, I know that once something goes into mainline, it is not allowed
>> to change any history. As this is on the u-boot-x86/master and Simon
>> has not asked Tom to pull, I believe it is OK.
>
> Fine then.
>
>> Regards,
>> Bin
>
> Amicalement,
> --
> Albert.

Acked-by: Simon Glass <sjg@chromium.org>

Regards,
Simon

^ permalink raw reply	[flat|nested] 5+ messages in thread

end of thread, other threads:[~2015-07-22  1:52 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2015-07-21  7:55 [U-Boot] [PATCH] x86: Fix RTC build error on ivybridge Bin Meng
2015-07-21 12:19 ` Albert ARIBAUD
2015-07-21 12:21   ` Bin Meng
2015-07-21 21:06     ` Albert ARIBAUD
2015-07-22  1:52       ` Simon Glass

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.