diff options
| author | Dario Nieuwenhuis <[email protected]> | 2022-09-15 13:26:31 +0200 |
|---|---|---|
| committer | GitHub <[email protected]> | 2022-09-15 13:26:31 +0200 |
| commit | e727fe8675111218d219f00dc11cf7a70df97b42 (patch) | |
| tree | 2a840c697f5628c17a0d75431a908cfdc33b0b69 /src | |
| parent | 443e275f1feb9bc145a1edc9a2b06192e3fcf93b (diff) | |
| parent | be20512f17210ae179078c4bb082211d00d828da (diff) | |
Merge pull request #16 from danbev/alp
Add contants and update comment about ALP
Diffstat (limited to 'src')
| -rw-r--r-- | src/lib.rs | 10 |
1 files changed, 7 insertions, 3 deletions
diff --git a/src/lib.rs b/src/lib.rs index def738b8d..4baaaa51c 100644 --- a/src/lib.rs +++ b/src/lib.rs | |||
| @@ -92,6 +92,9 @@ const BACKPLANE_WINDOW_SIZE: usize = 0x8000; | |||
| 92 | const BACKPLANE_ADDRESS_MASK: u32 = 0x7FFF; | 92 | const BACKPLANE_ADDRESS_MASK: u32 = 0x7FFF; |
| 93 | const BACKPLANE_ADDRESS_32BIT_FLAG: u32 = 0x08000; | 93 | const BACKPLANE_ADDRESS_32BIT_FLAG: u32 = 0x08000; |
| 94 | const BACKPLANE_MAX_TRANSFER_SIZE: usize = 64; | 94 | const BACKPLANE_MAX_TRANSFER_SIZE: usize = 64; |
| 95 | // Active Low Power (ALP) clock constants | ||
| 96 | const BACKPLANE_ALP_AVAIL_REQ: u8 = 0x08; | ||
| 97 | const BACKPLANE_ALP_AVAIL: u8 = 0x40; | ||
| 95 | 98 | ||
| 96 | // Broadcom AMBA (Advanced Microcontroller Bus Architecture) Interconnect (AI) | 99 | // Broadcom AMBA (Advanced Microcontroller Bus Architecture) Interconnect (AI) |
| 97 | // constants | 100 | // constants |
| @@ -607,10 +610,11 @@ where | |||
| 607 | // seems to break backplane??? eat the 4-byte delay instead, that's what the vendor drivers do... | 610 | // seems to break backplane??? eat the 4-byte delay instead, that's what the vendor drivers do... |
| 608 | //self.write32(FUNC_BUS, REG_BUS_RESP_DELAY, 0).await; | 611 | //self.write32(FUNC_BUS, REG_BUS_RESP_DELAY, 0).await; |
| 609 | 612 | ||
| 610 | // Init ALP (no idea what that stands for) clock | 613 | // Init ALP (Active Low Power) clock |
| 611 | self.write8(FUNC_BACKPLANE, REG_BACKPLANE_CHIP_CLOCK_CSR, 0x08).await; | 614 | self.write8(FUNC_BACKPLANE, REG_BACKPLANE_CHIP_CLOCK_CSR, BACKPLANE_ALP_AVAIL_REQ) |
| 615 | .await; | ||
| 612 | info!("waiting for clock..."); | 616 | info!("waiting for clock..."); |
| 613 | while self.read8(FUNC_BACKPLANE, REG_BACKPLANE_CHIP_CLOCK_CSR).await & 0x40 == 0 {} | 617 | while self.read8(FUNC_BACKPLANE, REG_BACKPLANE_CHIP_CLOCK_CSR).await & BACKPLANE_ALP_AVAIL == 0 {} |
| 614 | info!("clock ok"); | 618 | info!("clock ok"); |
| 615 | 619 | ||
| 616 | let chip_id = self.bp_read16(0x1800_0000).await; | 620 | let chip_id = self.bp_read16(0x1800_0000).await; |
